2
我想寫一個hql查詢,使用一個動態實例和一個列表作爲其參數之一。Hibernate動態實例與集合,有沒有可能?
簡單的例子:
一個HQL查詢與動態實例:
select new x.y.UserDto(u.name, u.contacts) from User u where u.xyz=:param1 ...
和我的DTO類的構造函數是:
public class UserDto {
private String name;
private List contacts;
public UserDto(String name, List contacts) {
this.name = name;
this.contacts = contacts;
}
...
}
與實體映射:
public class User {
@olumn(name="NAME")
String name;
@ManyToMany(targetEntity= Contacts.class, fetch = FetchType.EAGER)
@JoinTable(name="USER_DEPARTMENT_CONTACTS",
[email protected](name="DEPARTMENT_ID"),
[email protected](name="USER_ID"))
private List<Contacts> contacts;
...
}
所以,你可以看到我想要的就是創建一個具有一些屬性和實體集合的新對象。
我可以理解,Hibernate需要一個或多個查詢來實現這一點,因爲這會爲每個實體生成多個結果行。
有誰知道是否有可能創建一個新的對象,它是屬性和集合的組合?