Spring boot 和MongoDB 整合
下面是一个示例,演示如何使用db.collection.insertOne()方法向MongoDB数据库中插入一条文档:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
配置MongoDB连接:在application.properties文件中配置MongoDB连接信息:
spring.data.mongodb.uri=mongodb://localhost:27017/mydatabase
创建实体类:创建一个简单的Java类来表示MongoDB中的文档:
@Document(collection = "users")
public class User {
@Id
private String id;
private String name;
private int age;
// getters and setters
}
在这个例子中,我们使用了@Document注解来指定这个实体类对应MongoDB中的users集合,同时使用@Id注解来指定文档中的主键。
创建MongoDB仓库:创建一个接口来继承Spring Data MongoDB提供的MongoRepository接口,并使用@Repository注解将其标记为一个Spring Bean:
@Repository
public interface UserRepository extends MongoRepository<User, String> {
// 自定义查询方法
List<User> findByName(String name);
}
在这个例子中,我们定义了一个自定义查询方法findByName()来根据用户名查询用户信息。
应用程序中使用MongoDB仓库:
在需要使用MongoDB的地方,通过@Autowired注解将MongoDB仓库注入到Spring Bean中,并使用MongoDB仓库的方法来进行操作
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
public void addUser(User user) {
userRepository.save(user);
}
public List<User> findUserByName(String name) {
return userRepository.findByName(name);
}
}