用于选择多个值的Hibernate查询

use*_*796 20 java hibernate hql

在休眠中我可以做到以下

Query q = session.createQuery("from Employee as e);
List<Employee> emps = q.list();
Run Code Online (Sandbox Code Playgroud)

现在如果我想获取int和String我该怎么办?

Query q = session.createQuery(""SELECT E.firstName,E.ID FROM Employee E";
List ans = q.list();
Run Code Online (Sandbox Code Playgroud)

现在列表的结构是什么?

Yog*_*ngh 46

这可以.你唯一需要理解的是它会返回Object []如下列表:

     Query q = session.createQuery("select e.id, e.firstName from Employee e");
     List<Object[]> employees= (List<Object[]>)q.list();
     for(Object[] employee: employees){
         Integer id = (Integer)employee[0];
         String firstName = (String)employee[1];
         .....
     }
Run Code Online (Sandbox Code Playgroud)


Mat*_*teo 10

你将得到一个Objects 数组列表(每个有两个元素)

List< Object[] > employees = q.list();

for ( Object[] employee : employees ) {
    // employee[0] will contain the first name
    // employee[1] will contail the ID
}
Run Code Online (Sandbox Code Playgroud)