Java 如何使用AliasToBeanResultTransformer的transformList方法?
有人知道如何使用hibernate吗?我想将实体转换为dto。这是我的密码Java 如何使用AliasToBeanResultTransformer的transformList方法?,java,hibernate,Java,Hibernate,有人知道如何使用hibernate吗?我想将实体转换为dto。这是我的密码 Criteria criteria = session.createCriteria(Person.class) criteria.add(Restrictions.eq("id",id)); PersonDto personDto = criteria.uniqueResult(); 它抛出一个classCastException说不能向PersonDto投人 补充问题: 这段代码很好用,但为什么上面的代码不行呢 C
Criteria criteria = session.createCriteria(Person.class)
criteria.add(Restrictions.eq("id",id));
PersonDto personDto = criteria.uniqueResult();
它抛出一个classCastException说不能向PersonDto投人
补充问题:
这段代码很好用,但为什么上面的代码不行呢
Criteria criteria = session.createCriteria(Person.class);
List<PersonDto> personDtos = criteria.list();
Criteria=session.createCriteria(Person.class);
List personDtos=criteria.List();
如果您只想转换实体,可能应该使用推土机之类的工具
使用transformList的示例
Query query = session.createQuery(""
+ "Select DISTINCT VP.versionId as parent from VersionData VP "
+ "INNER JOIN VP.zvitId ZP "
+ "INNER JOIN ZP.childrens CH "
+ "INNER JOIN CH.versions CP "
+ "where CP.zvitId.zvitId = :idList and VP.dend IS NULL"
)
.setParameter("idList", id)
.setResultTransformer(Transformers.aliasToBean(ParentIdList.class));
@SuppressWarnings("unchecked")
List<ParentIdList> result = query.list();
/**
* @return the parents
*/
public String getParent()
{
return parent;
}
/**
* @param parents the parents to set
*/
public void setParent(String parents)
{
this.parent = parents;
}
//getters, setters, hashcode, equals
}