一尘不染

在休眠状态下检索单个字段而不是整个pojo

hibernate

我有一些关于hibernate的查询,

表:Employee_Master

ID号名称Varchar薪金长

POJO:EmployeeMaster.java

public class EmployeeMaster {

private int id ;
private String name;
private long salary;

//... all field s getter/ setter  methods


}

现在,我只想从此类ID中获取名称。

SQL查询像:

select name from employee_master where id = 10;

但是我们怎样才能在hibernate中实现以上相同的目的呢?

session.createQuery("from EmployeeMaster empMaster where empMaster.id = 10");

我知道这个解决方案,但是它将返回整个pojo列表。但是我只想要那个字段名称,那我该怎么办?


阅读 231

收藏
2020-06-20

共1个答案

一尘不染

在HQL中,您可以简单地要求一个字段:

String employeeName = session.createQuery("select empMaster.name from EmployeeMaster empMaster where empMaster.id = :id").setInteger("id",10).uniqueResult();
2020-06-20