Spring Data JPA(Hibernate) EntityManager 增删改查 举例
时间: 2024-09-09 08:03:29 浏览: 47
Spring Data JPA (基于Hibernate) 是Spring框架下的一个强大工具,它简化了Java应用与关系数据库之间的交互。EntityManager是JPA API的核心组件,它是Oracle TopLink、Hibernate等JPA实现的核心管理实体对象的工具。
以下是使用EntityManager进行增删改查的基本操作示例:
1. **创建(Insert)**:
```java
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
@Entity
public class User {
//...
}
@Service
public class UserService {
@PersistenceContext
private EntityManager entityManager;
public void addUser(User user) {
entityManager.persist(user);
}
}
```
用户服务中,通过`entityManager.persist()`方法将User对象保存到数据库中。
2. **读取(Read)**:
```java
public List<User> getUsers() {
return entityManager.createQuery("SELECT u FROM User u", User.class).getResultList();
}
```
查询所有用户。
3. **更新(Update)**:
```java
User updatedUser = entityManager.find(User.class, 1); //假设找到id为1的用户
updatedUser.setName("New Name");
entityManager.merge(updatedUser); //标记为已更改并保存到数据库
```
更新某个用户的属性并合并到数据库中。
4. **删除(Delete)**:
```java
User deleteUser = entityManager.find(User.class, 1);
entityManager.remove(deleteUser); //标记为删除
```
删除指定ID的用户。
阅读全文