4

私がすることができます:

def criteria = Category.createCriteria();
def results = criteria.list{ 
                          like('categoryName', "%abc%") or
                          like('categoryName', "%qwe%") 

                        };

しかし、文字列値の数が不明な場合はどうすればよいですか?私は次のようなことをしたいです:

def results = criteria.list{  
for (str in strList){
like('categoryName', str) or
                          }
                        };

もちろん、それは機能しません。

4

1 に答える 1

11

使用or { }

def criteria = Category.createCriteria()
def results = criteria.list {
    or {
        strList.each { str ->
            like('categoryName', "%${str}%")
        }
    }
}
于 2012-02-02T14:57:13.453 に答える