String hql = "select * from myTable where isActive IN (:isActive)";
Query query = session.createQuery(hql);
query.setString("school","");
query.setString("isActive", "Y");//working
query.setString("isActive", "N");//working
query.setString("isActive", "Y","N"); // not working
query.setString("isActive", "'Y','N'"); // not working
return query.list();
我不知道下面的代码是否应该工作,我想知道我是否可以将值列表传递给我的搜索字符串参数,这样我就不需要创建查询;一种用于选择所有数据,无论状态如何,另一种用于仅选择 Activity 数据。
最佳答案
使用Query.setParameterList()
传入List
作为参数:
String hql = "select * from myTable where isActive IN (:isActive)";
Query query = session.createQuery(hql);
List<String> isActiveList = new ArrayList<>();
isActiveList.add("Y");
isActiveList.add("N");
query.setParameterList("isActive", isActiveList);
return query.list();
关于java - 在查询参数上传递值列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36783130/