我有一个如下所述的存储库类。我想确定要在运行时获取的字段。
在春季,我刚刚导入了接口org.springframework.data.mongodb.repository.MongoRepository并创建了我的存储库。
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.data.mongodb.repository.Query;
public interface activeEmployeeCacheRepository extends MongoRepository<activeEmployeeCache,String> {
@Query(value = "{'employee.employeeNumber': ?0}",fields = "?1")
public activeEmployeeCache findByEmployeeNumber(String employeeNumber,String fields);
}
如果我使用上面的代码运行应用程序,那么我将获得以下异常。
org.bson.BsonInvalidOperationException:仅在CurrentBSONType为DOCUMENT时才能调用readStartDocument,而在CurrentBSONType为STRING时不能调用。 在org.bson.AbstractBsonReader.verifyBSONType(AbstractBsonReader.java:690)
我知道它看起来很愚蠢,但是我确实需要在运行时决定这些字段。
有人可以帮我吗?