springboot如何实现增删改查
时间: 2023-11-16 19:50:07 浏览: 68
Spring Boot 通过集成 Spring Data JPA 或 MyBatis 等 ORM 框架,可以方便地实现增删改查操作。
以下是 Spring Data JPA 实现增删改查的示例代码:
1. 定义实体类和数据访问接口
```java
@Entity
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private Integer age;
// 省略 getter 和 setter 方法
}
public interface UserRepository extends JpaRepository<User, Long> {
}
```
2. 实现服务层接口
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserRepository userRepository;
@Override
public User save(User user) {
return userRepository.save(user);
}
@Override
public void delete(Long id) {
userRepository.deleteById(id);
}
@Override
public User findById(Long id) {
return userRepository.findById(id).orElse(null);
}
@Override
public List<User> findAll() {
return userRepository.findAll();
}
@Override
public List<User> findByName(String name) {
return userRepository.findByName(name);
}
}
```
3. 编写控制器
```java
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@PostMapping
public User save(@RequestBody User user) {
return userService.save(user);
}
@DeleteMapping("/{id}")
public void delete(@PathVariable Long id) {
userService.delete(id);
}
@GetMapping("/{id}")
public User findById(@PathVariable Long id) {
return userService.findById(id);
}
@GetMapping
public List<User> findAll() {
return userService.findAll();
}
@GetMapping("/name/{name}")
public List<User> findByName(@PathVariable String name) {
return userService.findByName(name);
}
}
```
4. 运行测试
访问 http://localhost:8080/users 可以获取所有用户信息;
访问 http://localhost:8080/users/1 可以获取 id 为 1 的用户信息;
通过 POST 请求 http://localhost:8080/users 可以新增用户;
通过 DELETE 请求 http://localhost:8080/users/1 可以删除 id 为 1 的用户;
访问 http://localhost:8080/users/name/xxx 可以根据用户名查询用户信息。
阅读全文