jpa Tuple 怎么转换成实体类
时间: 2023-06-06 16:04:49 浏览: 339
springboot jpa 自动生成实体类的 文件 Generate POJOs.groovy
5星 · 资源好评率100%
可以使用JPA的构造函数表达式将Tuple转换成对应的实体类,具体步骤如下:
1.定义一个实体类构造函数,参数需要和查询中的字段一一对应。
2.在查询中使用构造函数表达式,将查询结果转换成对应的实体类。
示例代码如下:
```java
@Entity
@Table(name = "user")
public class User {
@Id
private Integer id;
private String name;
private Integer age;
public User(Integer id, String name, Integer age) {
this.id = id;
this.name = name;
this.age = age;
}
// getter and setter...
}
```
```java
public interface UserRepository extends JpaRepository<User, Integer> {
@Query("SELECT u.id as id, u.name as name, u.age as age FROM User u WHERE u.id = :id")
User findUserById(@Param("id") Integer id);
}
```
```java
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
public User getUserById(Integer id) {
Tuple tuple = userRepository.findUserById(id);
if (tuple == null) {
return null;
}
return new User(
tuple.get("id", Integer.class),
tuple.get("name", String.class),
tuple.get("age", Integer.class)
);
}
}
```
这样就可以将查询结果转换成对应的实体类了。
阅读全文