最近在使用spring data jpa结合hibernate来开发java程序,平常经常使用的实体entity来进行数据的交互,现在场景需要查询部分字段,经过各种踩坑,发现可以使用jpa中的EntityManager来实现,具体如下:
1、创建实体
@Entity @Table(name = "person_t") public class Person {}
2、声明变量
@PersistenceContext private EntityManager entityManager;
3、实现部分字段逻辑查询
//说明:此处需要查询几个字段,就需要在实体Person中添加相关的构造方法
String sql = "select new Person(userId,zhName) from Person p where p.departName=?1";
TypedQuery<Person> query = entityManager.createQuery(sql, Person.class); query.setParameter(1,"人力资源部"); List<Person> result = query.getResultList();
参考来源:http://blog.csdn.net/iflow/article/details/48995711