我有两个类如何在Hibernate Criteria中返回特定类型而不是列表<Object[]>?
@Entity
public class user implements Serializable{
...
private Set<article> uploaded = new HashSet<article>();
...
@OneToMany(mappedBy="uploader")
public Set<article> getUploaded() {
return uploaded;
}
@Entity
public class article implements Serializable{
....
private user uploader;
....
@ManyToOne
public user getUploader() {
return uploader;
}
所以也存在两个表中的数据库:用户和文章。我尝试使用标准得到的数据:
tx = session.beginTransaction();
Criteria cr = session.createCriteria(article.class);
...
List<article> list = cr.list();
但返回的列表不是List<article>
,这是一个List<Object>
包含文章,USER,我不知道如何从列表中获取文章数据。如果我设置FetchType.Lazy,则返回的列表将是List<article>
不含用户数据,但我也需要对用户数据...
非常感谢您的回答!我做了一些测试,它的工作原理是这样的:名单物品=新的ArrayList (); \t \t \t为(对象[]对象:列表){ \t \t \t \t articles.add((物品)的对象[1]); \t \t \t} –