MongoDB简介
MongoDB是文档型数据库,一般用类似json的格式存储,存储的内容是文档型的。这样也就有机会对某些字段建立索引,实现关系数据库的某些功能。
- 笔者是在VirtualBox的CentOS系统用Docker安装MongoDB,如何用docker安装MongoDB具体可以看这篇文章
# 获取最新镜像
docker pull mongo:latest
docker run -itd --name mongo -p 27017:27017 mongo --auth # 运行容器,-itd参数是让docker启动后能一直运行,如果不加,则在容器启动后执行完就立刻退出了
docker exec -it mongo mongo admin
# 创建一个名为 admin,密码为 123456 的用户。
db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
# 尝试使用上面创建的用户信息进行连接。
db.auth('admin', '123456')
之后本地连接远程的MongoDB服务,然而可能连接不上去
docker exec -it bash # 进入docker容器
需要做如下配置改动:将bindIp注释掉
由于需要修改配置文件,而docker容器当中没有安装编辑软件vi/vim所以使用替换文件的方法进行修改:
# 将容器中的文件复制到本地目录中
docker cp <container>:/etc/mongod.conf.orig .
# 在本地中修改文件,并用修改后的文件替换容器中的文件
docker cp ./mongod.conf.orig <container>:/etc/mongod.conf.orig
之后就可以通过本地连接到MongoDB了,笔者在IDEA中安装插件进行连接
在SpringBoot中整合MongoDB
- 创建好SpringBoot项目后引入相关依赖
<!--引入MongoDB依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
- 相关的配置
spring:
data:
mongodb:
host: 192.168.43.57 #这是笔者虚拟机CentOS的ip地址
port: 27017
database: admin
username: admin
password: '123456'
authentication-database: admin
- 如何使用?简单使用可以看这篇教程
1、创建实体类与数据库集合映射
@Document(collection = "user")
2、创建DAO接口对数据进行操作
@Repository
extends MongoRepository<User, String>
3、根据接口提供的操作方法进行数据的增删改操作
最后,测试结果如下: