我有一个如下所述的存储库类。我想决定在运行时获取的字段。
在春天,我刚刚导入了接口 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: readStartDocument 只能在 CurrentBSONType 为 DOCUMENT 时调用,而 CurrentBSONType 为 STRING 时不能调用。在 org.bson.AbstractBsonReader.verifyBSONType(AbstractBsonReader.java:690)
我知道这看起来很愚蠢,但我真的需要在运行时决定字段。
有人可以帮我吗?