0我有这个方法:
public List<Product> getProductsByListIds(List<Long> ids) {
String query = "from Product pr where pr.id in(:ids)";
List<Product> products= (List<Product>) getSession().createQuery(query)
.setParameterList("ids", ids).list();
return products;
}
这种方法没问题,唯一的问题是ids.size() >1000
我试图找到一个令人信服的解决方案来解决这个问题。
答案 0 :(得分:0)
我的建议是退后一步,看看设计和你想要实现的目标,将数百个参数传递给SQL语句不会非常有效,如果是这样的话,我会感到惊讶最符合您要求的优雅解决方案。
如果不了解更多关于如何调用此方法以及此ID列表来自哪里很难给出具体建议,但我建议您尽可能使用连接。