如何在Hibernate中使用投影获得POJO响应?

如何在Hibernate中使用投影获得POJO响应?,hibernate,Hibernate,我有一个班级Student,它与系的班级有一对多的依赖关系 class Student{ String name; int age; @OneToMany List<Department> departments; //all getter setters here } 我正在使用Hibernate从数据库中获取结果 我想从学生获取姓名,年龄,从系获取部门名 截至目前,我正在使用此查询: Criteria criteria = sessi

我有一个班级
Student
,它与
系的
班级有一对多的依赖关系

class Student{
    String name;
    int age;

    @OneToMany
    List<Department> departments;

    //all getter setters here
}
我正在使用Hibernate从数据库中获取结果

我想从
学生
获取
姓名
年龄
,从
获取
部门名

截至目前,我正在使用此查询:

Criteria criteria = sessionFactory.getCurrentSession().createCriteria(Student.class).createAlias("department", "department");
criteria.setResultTransformer(Transformers.aliasToBean(Student.class));

List<Student> rows = (List<Student>)criteria.list();
Criteria=sessionFactory.getCurrentSession().createCriteria(Student.class).createAlias(“部门”、“部门”);
标准.setResultTransformer(Transformers.aliasToBean(Student.class));
列表行=(列表)条件。列表();
如果我尝试访问某个操作的rows元素,那么它会抛出

ClassCastException:java.lang.long或java.lang.string不能强制转换为com.model.Student


请告诉我如何获得学生POJO对上述查询的响应

至少这里有错误

sessionFactory.getCurrentSession().createCriteria(Student.class).createAlias("departments", "departments");
部门
应根据您的映射使用
S

sessionFactory.getCurrentSession().createCriteria(Student.class).createAlias("departments", "departments");