Spring Data的代码实例
时间: 2023-05-28 17:05:05 浏览: 40
下面是一个简单的 Spring Data 的代码实例,使用了 Spring Data JPA 和 Hibernate。
1. 定义实体类
```java
@Entity
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(name = "name")
private String name;
@Column(name = "age")
private Integer age;
// getter、setter、构造函数等省略
}
```
2. 创建 Repository 接口
```java
public interface UserRepository extends JpaRepository<User, Long> {
List<User> findByName(String name);
}
```
3. 编写 Service 类
```java
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
public List<User> findByName(String name) {
return userRepository.findByName(name);
}
public User save(User user) {
return userRepository.save(user);
}
public void delete(Long id) {
userRepository.deleteById(id);
}
}
```
4. 使用 Service 类
```java
@RestController
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/users")
public List<User> getUsers(@RequestParam(required = false) String name) {
if (name != null) {
return userService.findByName(name);
} else {
return userService.findAll();
}
}
@PostMapping("/users")
public User createUser(@RequestBody User user) {
return userService.save(user);
}
@DeleteMapping("/users/{id}")
public void deleteUser(@PathVariable Long id) {
userService.delete(id);
}
}
```