2016-05-04 62 views
0

我因爲語法爲ignore case查詢盤算是:春天CrudRepository - 在採集找到忽略大小寫

findByFieldIgnoreCase(Object field) 

而對於一個collection查詢語法

findByFieldIn(List<Object> fields) 

ignore case collection查詢語法將是:

findByFieldIgnoreCaseIn(List<Object> fields) 

但這似乎並不工作k(它仍然區分大小寫)。

想法?

編輯:

這不是findByFieldInIgnoreCase爲好。

+0

不應該是'findByFieldInIgnoreCase(..)'? (如果那甚至很重要) –

+0

不,也嘗試過:\ – Daniel

回答

0

Spring Data MongoDB Reference Documentation指出:

方法分析器支持設置的忽略標誌爲個別 屬性(例如,findByLastnameIgnoreCase(...))或用於類型的所有 屬性支持忽略大小寫(通常字符串 實例,例如findByLastnameAndFirstnameAllIgnoreCase(...))。 是否支持忽略個案支持可能因商店而異,因此請參閱 特定於商店的查詢方法的參考文檔中的 相關章節。

supported keywords for query methods表沒有明確提到的InIgnoreCaseIgnoreCaseIn關鍵字。

至於其他unsupported keywords,你可以在Spring Data MongoDB JIRA上打開一個功能請求。

在平均時間,讓你的代碼的運行,你可以使用Query註解或Querydsl實施findByFieldInIgnoreCase自己findByFieldIgnoreCaseIn。我在其他post提供了幾種可能的解決方案。

0
findByFieldInAndIgnoreCase(List<Object> fields) 

這應該在其啓動應用程序時不會引發任何錯誤。

+0

不會。「在啓動應用程序時不會拋出任何錯誤」!=工作。 – Daniel