Hibernate MySQL使用带有值的IN或没有参数的ALL进行选择

时间:2019-02-20 15:52:51

标签: java mysql hibernate

当我们有一个特定的值(一个列表)时,执行休眠替换的正确方法是什么,我们希望基于该列表来限制结果。如果没有值,那么我们要显示所有内容,而不是限制。

例如下面的productList可以是1,2,3,那么我们只想显示值为1,2或3的COLUMN1。 productList是否为空列表。我们要显示所有结果。

这是我想做的一个例子:

List<Integer> productList = new ArrayList()<>;
org.hibernate.Session session = new Session();

org.hibernate.Query query = session.createQuery("SELECT * FROM TABLE_A WHERE COLUMN1 IN (:products)");

query.setParameterList('products', (Collection) productList);

0 个答案:

没有答案