我不想在表上显示所有属性,所以我只想选择几列,然后将它们的值映射到bean,类似于Hibernate的Transformers.aliasToBean(T.class)
,但使用JPA和标准。
我能够获得List<Tuple>
,如何将其转换为List<T>
?
正如标题所说,有可能吗?
答案 0 :(得分:0)
在JPQL / Criteria查询中,您可以为查询中的对象构造函数提供参数,以便查询为您返回这些对象。例如: “从实体e中选择新的package.BeanClass(e.attribute1,e.attribute2)”
使用本机SQL查询,如果您使用的是JPA 2.1,则可以使用ConstructorResult构建相同的实例: http://en.wikibooks.org/wiki/Java_Persistence/Querying#ConstructorResult_.28JPA_2.1.29
但如果您无法使用Jpa 2.1,则需要特定于提供商的解决方案,例如http://onpersistence.blogspot.com/2010/07/eclipselink-jpa-native-constructor.html