如何通过JPA从某个表中有选择地获取项目

Sam*_*Sam 2 java orm hibernate jpa

环境:JPA 1,Hibernate 3.3.x

我有一个JPA实体类(User),如何有选择地获取成员变量say(first_name,last_name)而不是使用JPA api获取所有用户属性.

Pas*_*ent 5

你的意思是这样的(在这种情况下,你的查询结果将是一个Object[]):

SELECT u.firstName, u.lastName FROM User u
Run Code Online (Sandbox Code Playgroud)

或者,您可以在SELECT子句中使用构造函数表达式:

SELECT NEW com.acme.example.UserDetails(u.firstName, u.lastName) FROM User u
Run Code Online (Sandbox Code Playgroud)

NEW中使用的类不一定是实体,它只需要提供适当的构造函数.