我有以下要求查詢:春與查詢的Dsl定製的約束力和或操作不起作用
「?/條類別 =廚房& 類別 =運動」
此查詢工作沒有自定義綁定。它會給我所有的廚房和體育用品作爲迴應。它以某種方式進行OR操作。
但我需要自定義綁定,因爲我需要ingore案件。我現在用的這個自定義綁定:
@Repository
public interface ArticleRepository extends JpaRepository<Article, Long>,
QueryDslPredicateExecutor<QArticle>, QuerydslBinderCustomizer<QArticle> {
@Override
default public void customize(QuerydslBindings bindings, QArticle article) {
bindings.bind(String.class).first((StringPath path, String value) -> path.containsIgnoreCase(value));
}
}
這隻過濾器attribut的第一個可用值。所以在這種情況下,它只會將類別廚房中的文章作爲響應。該類別(體育)的第二個值被忽略。
現在我的問題:我怎樣才能得到文章都 catergories忽略案件感性?我需要在自定義綁定中更改以實現該功能?
非常感謝您
您在代碼中使用了.first。認爲這是一個錯字:) –
實際上,你的例子不起作用。我不能使用.all()mehtod:類型QuerydslBindings.PathBinder中的方法all(MultiValueBinding )不適用於參數(( path, values) - > {} ) –
如果我沒有記錯,它確實無法與'bind(類類型)'參數一起使用,但它應該可以與'bind(T ... paths)'一起工作。 –