【发布时间】:2020-03-11 10:30:10
【问题描述】:
我想使用 JPA 从表中选择几列。 在这种情况下,我对完整的实体不感兴趣,而只是对具有某些 Id 的几列感兴趣。
所以这是我的方法:
EntityManager em = createEntityManager();
List<Object[]> data = em.createNativeQuery( "SELECT ID, FOREIGN_OBJ_1_ID, FOREIGN_OBJ_2_ID FROM TABLE1" ).getResultList();
em.close();
for ( Object[] row : rentaldata )
{
Long id = ( (BigDecimal) row[0] ).longValue();
Long fk_1 = ((Long) row[1]);
Long fk_2 = ((Long) row[2]);
DataObject do = new DataObject(id, fk_1, fk_2, ...);
...
我也尝试使用 JPA select new .... 但我想确保没有创建任何对象。 所以我的问题是:有没有更好的方法来加载几列并将它们放入一个对象中?
谢谢, 托尔斯滕
【问题讨论】: