jpa createNativeQuery
时间: 2023-09-06 17:14:21 浏览: 146
SpringDataJpa 动态复杂查询NativeQuery
在 JPA 中,createNativeQuery 方法用于创建一个本地 SQL 查询,它可以执行任意的 SQL 语句,而不受 JPA 中实体类和映射的限制。
该方法定义如下:
```java
public Query createNativeQuery(String sqlString);
```
其中,`sqlString` 参数是要执行的 SQL 语句。
例如,以下代码创建了一个本地 SQL 查询,查询 `users` 表中的所有数据:
```java
EntityManager em = ...;
Query query = em.createNativeQuery("SELECT * FROM users");
List<Object[]> results = query.getResultList();
```
需要注意的是,由于本地 SQL 查询不受实体类和映射的限制,因此返回的结果是一个 Object 数组的列表,每个 Object 数组代表一行查询结果,其中包含了该行所有列的值。如果需要将结果转换为实体类,可以使用 JPA 的 `SqlResultSetMapping` 注解来进行映射。
阅读全文