mongoDB 的安装和使用【docker compose,springboot】
以下是一个使用Docker Compose安装和配置MongoDB,并在Spring Boot应用中使用它的示例。
首先,创建一个docker-compose.yml
文件:
version: '3.8'
services:
mongo:
image: mongo:latest
ports:
- "27017:27017"
volumes:
- mongo_data:/data/db
environment:
MONGO_INITDB_ROOT_USERNAME: rootuser
MONGO_INITDB_ROOT_PASSWORD: rootpass
restart: unless-stopped
volumes:
mongo_data:
这个配置文件定义了一个服务mongo
,使用官方的MongoDB镜像,并映射了端口和数据卷。同时,它还设置了环境变量以创建一个初始的root用户。
接下来,在Spring Boot应用中,你需要添加MongoDB依赖和配置:
pom.xml(Maven)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
application.properties
spring.data.mongodb.uri=mongodb://rootuser:rootpass@localhost:27017/?authSource=admin&authMechanism=SCRAM-SHA-1
在Spring Boot应用中,你需要使用MongoTemplate
或者MongoRepository
来操作MongoDB。
ExampleMongoRepository.java
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface ExampleMongoRepository extends MongoRepository<YourEntity, String> {
// 自定义查询方法
}
ExampleService.java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class ExampleService {
@Autowired
private ExampleMongoRepository repository;
public void addEntity(YourEntity entity) {
repository.insert(entity);
}
// 其他业务逻辑
}
确保你已经启动了Docker Compose:
docker-compose up -d
然后启动你的Spring Boot应用,它将会连接到运行在Docker容器中的MongoDB服务。
评论已关闭