SpringBoot 整合 MongoDB 实现数据的增删改查!
warning:
这篇文章距离上次修改已过190天,其中的内容可能已经有所变动。
在Spring Boot中整合MongoDB实现数据的增删改查,你需要做以下几个步骤:
- 添加Maven依赖
- 配置MongoDB连接
- 创建实体类
- 创建MongoDB仓库接口
- 创建服务层
- 创建控制器
以下是一个简单的示例:
pom.xml依赖添加
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
application.properties配置
spring.data.mongodb.uri=mongodb://username:password@localhost:27017/your_database
实体类User.java
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
@Document
public class User {
@Id
private String id;
private String name;
private int age;
// 省略getter和setter方法
}
MongoDB仓库接口UserRepository.java
import org.springframework.data.mongodb.repository.MongoRepository;
public interface UserRepository extends MongoRepository<User, String> {
// 这里可以添加自定义查询方法
}
UserService.java服务层
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Optional;
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
public List<User> findAll() {
return userRepository.findAll();
}
public Optional<User> findById(String id) {
return userRepository.findById(id);
}
public User save(User user) {
return userRepository.save(user);
}
public void deleteById(String id) {
userRepository.deleteById(id);
}
}
UserController.java控制器
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Optional;
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping
public List<User> getAllUsers() {
return userService.findAll();
}
@GetMapping("/{id}")
public Optional<User> getUserById(@PathVariable String id) {
return userService.findById(id);
}
@PostMapping
public User createUser(@RequestBody User user) {
return userService.save(user);
}
@DeleteMapping("/{id}")
public void deleteUser(@PathVariable String id) {
userService
评论已关闭