来自集合的 HQL 对象集合
我在非 Hibernate 对象中得到了一个 Set
集合,并且在 Hibernate 中得到了一个 User
域实体。
UserDTO
包含有关用户的较少信息(仅 ID 和名称)
如何从 DTO 对象中选择完整的 Hibernate User Set
/List
?
像这样?
Set<UserDTO> setDTO = .....
String hql = "FROM User WHERE id IN (:userDTO )";
Query query = entityManager.createQuery(hql);
query.setParameter("userDTO", setDTO);
return query.getResultList();
谢谢
I got a Set<UserDTO>
collection in a not Hibernate object, and I got a User
domain entity in Hibernate.
UserDTO
contains less information about user (only id and name)
How can I select full Hibernate User Set
/List
from the DTO object?
Like this?
Set<UserDTO> setDTO = .....
String hql = "FROM User WHERE id IN (:userDTO )";
Query query = entityManager.createQuery(hql);
query.setParameter("userDTO", setDTO);
return query.getResultList();
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
几乎。但是您必须首先在单独的集合中提取 ID:
然后继续查询,并将
ids
设置作为参数传递。Almost. But you'd have to extract the IDs in a separate collection first:
Then proceed with the query, and pass the
ids
set as param.不要忘记您需要使用 Query#setParameterList() 而不是 Query#setParameter。
Don't forget that you need to use Query#setParameterList() instead of Query#setParameter.