List<Prize> prizes =
sessionProvider.getCurrentSession().createQuery("from Prize where id in (:ids)")
.setParameterList("ids", prizeIds).list();
我有一个prizeIds列表,它不是唯一的。我需要为每个id获取Prize对象。但是hibernate只返回我唯一的元素列表。如何获得与输入列表相同大小的列表。
答案 0 :(得分:1)
您将获得的答案是数据库中“in”函数的默认功能。使用exists或not exist子句来检索每个id的记录。我怀疑你是否可以使用存在或不存在。
但是,请确保您尝试实现的功能,这在大多数应用程序中并不常见
答案 1 :(得分:0)
更新:您收集的内容有多个ID会更改内容。当然Hibernate正在做他的工作,所以你必须找到另一种解决方案。
正确回答问题:使用“in”不可能获得非独特的结果。