簡體   English   中英

使用$ in子句從MongoTemplate查詢中刪除引號

[英]Remove quotes from MongoTemplate query with $in clause

我有結合各種條件的mongoTemplate查詢。 在此查詢中,我需要通過一組ID選擇文檔。 所以我用“ in”方法。

這是我的代碼:

Query query = new Query(Criteria.where("sizeId").is(sizeId));

query.addCriteria(Criteria.where("companyId").in(companyIds));

List<StatisticUnit> result = mongoTemplate.find(query, StatisticUnit.class);

“ companyIds”是一個整數值列表。

我沒有結果,因為MongoTemplate在qoutes中包裝了$ in運算符,以便Mongo將它們視為字符串。 實際查詢如下所示:

$in: ["5", "15"]

代替

$in: [5, 15]

如何告訴mongoTemplate不要忽略某種類型的集合值,並且在使用Integer時不要將它們用引號引起來? 謝謝!

我自己解決了這個問題。 當我使用HashSet而不是ArrayList時,一切正常。 希望這對其他人有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM