gpt4 book ai didi

java - Spring Data MongoDB 存储库查询串联如何工作?

转载 作者:行者123 更新时间:2023-11-30 11:41:47 24 4
gpt4 key购买 nike

当我创建像 findByName(...) 这样的 Spring Data 存储库方法时,一切正常。但是当使用 findByField1AndName(...) 时,Spring Data MongoDB 只为最后一个参数生成查询:

{ name : 'qwerty' }

但我预计它会产生

{ field1 : 'something', name : 'querty' }

有什么问题?请帮忙。

更新 1:如果有人遇到这样的问题,您可以使用@Query 注释手动构建您的查询,示例如下:

@Query("{ region: ?0, product: ?1, direction: ?2, deliveryCondition: ?3, sortament: ?4}")
QuotationKey findByRegionAndProductAndMarketDirectionAndDeliveryConditionAndSortament(
Geography region, Product product, MarketDirection direction,
DeliveryCondition deliveryCondition, Sortament sortament);

最佳答案

不确定是否遗漏了什么。我试过 1.0.3 和 1.0.4 还是不行。目前唯一可用的版本看起来像 1.0.1

当我尝试使用 1.0.3 和 1.0.4 查找类似 findByZipCodeAndName 的东西时,这就是我在日志中看到的内容

MongoQueryCreator [DEBUG] Created query Query: { "zipCode" : "test"}, Fields: null, Sort: null

对于 1.0.1,它按预期工作:

MongoQueryCreator [DEBUG] Created query { "zipCode" : "test" , "name" : "blah"}

显然在新版本中只有第一个字段被解释和查询。

关于java - Spring Data MongoDB 存储库查询串联如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12121139/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com