jpa中,可以用entityManager.createNativeQuery()来执行原生的SQL语句,默认返回的是数组,但是使用起来不方便,所以最好能置换成对象方便使用。
1、默认返回数组
List rs = em.createNativeQuery(sql).getResultList();
2、返回数据转换为map
Query query = em.createNativeQuery(sql);
query.unwrap(SQLQuery.class).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
3、将查询数据映射到实体对象
@Data
@Entity // 这个注解必备
public class TableColumn {
@Id // 这个注解必备,必须有个id
private String id;
private String columnName;
private String dataType;
}
Query query = em.createNativeQuery(sql, TableColumn.class);
List<TableColumn> rs = query.getResultList();
- 版权所有:奇站网络 转载请注明出处
- 厦门奇站网络科技有限公司,专业提供网站建设,响应式网站建设,小程序开发,系统定制开发。
- 软件开发咨询热线:吴小姐 13313868605