5
因此,簡而言之:是否可以在Spring Data JPA(可能是@ Query-Annotated)Repository-Methods中將參數設置爲「default:All」或更一般地設置爲默認特定值?Spring Data JPA Repositories:是否可以給params一個默認值/默認全部?
我是aware它可能在(其他)控制器中設置默認值,我只是好奇它是否可以在存儲庫級別執行。我認爲這可能是一個很好的功能,因爲「給我一些過濾結果集,其中過濾器可能沒有通過休息呼叫設置在前端」是一個非常常見的用例。
示例查詢:
@Query("select new com.my.dto(e.name, e.age, e.address)" +
" from Entity e" +
"where e.name like ?1 " +
"and e.age like ?2 " +
"and e.street like ?3")
List<Item> findItemsFiltered(String name, String age, String street);
所以,當我們說街道沒有設置,系統信息庫應使用「%」返回在其他標準是匹配,但路邊沒有相關的所有結果。
這會變得凌亂imho。相反,你可能更適合使用構造動態查詢的「規範」(這是你基本想要的)。另請參閱http://spring.io/blog/2011/04/26/advanced-spring-data-jpa-specifications-and-querydsl/ – 2014-09-10 11:00:00
您也可能想查看參考指南 - > http:// docs。 spring.io/spring-data/jpa/docs/current/reference/html/#specifications – 2014-09-10 11:05:50
聽起來像一個可行的解決方案,感謝迄今:)我只是想特別是常見的用例「回退選擇一切,如果沒有價值定義「,那麼會有一個」更簡單的方法來做到這一點「。如果在這裏有一些容易理解的東西,想想其他查詢有一個filtervalue列表,比如'where suchroup IN?3'(你不能在這裏使用「%」)。但是,非常感謝迄今。如果你願意,請在評論中創建一個答案。我仍然會等待其他答案,但正如所說,它是一個可行的解決方案:-) – Dominik 2014-09-10 12:05:59