我们在我的应用程序中使用 hibernate 3.6.3.Final 和 MySql 数据库。我需要使用java将以下Mysql查询转换为HQL。
select * from user where name like "%mohan%" and name like '%ram%';
如何在hibernate和java中执行逻辑AND运算符?
最佳答案
编辑:
您需要动态定义 hql 查询:
String[] likes = {"foo", "bar"};
String myQuery = "select e from User e where 1=1";
for(int i=0; i<likes.length; i++){
myQuery+= " and e.name like :"+i;
}
Query query = getSessionFactory().getCurrentSession().createQuery(myQuery);
for(int i=0; i<likes.length; i++){
query.setParameter(i, "%"+likes[i]+"%");
}
query.list();
注意:您可以使用 StringBuilder 来连接字符串
关于java - 在 hibernate 中使用 like 和 AND 逻辑进行搜索查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30800032/