1.准备工作:环境配置
下载地址:
链接: https://pan.baidu.com/s/1kt3ZxNumhJtCCcF6WBGVzA 提取码: ne6f
解压到目录d盘,也可以其他位置,建议不要c盘(系统盘)
我的目录是:D:\mongodb-4.2.0
解压后文件夹是:
其中conf、data、log文件夹是不存在的,需要手动创建;
创建conf文件夹,并新建mongo.conf文件,文件内容如下:
dbpath = D:\mongodb-4.2.0\data logpath = D:\mongodb-4.2.0\log\mongod.log logappend = true port=27017 |
依据上面的配置文件内容,分别创建data和log文件夹。
可选:在path环境变量中,加入D:\mongodb-4.2.0\bin,保存;
以管理员身份打开命令行,并进入到D:\mongodb-4.2.0\bin目录下;进行安装MongoDB服务;
mongod.exe --config "D:\ mongodb-4.2.0\conf\mongod.cfg" --install
然后执行成功后,就可以在win+R中输入services.msc查看MongoDB服务;
输入net start MongoDB开启服务;
使用mongo,即可进入mongodb的操作。如图所示
进入到admin数据库,添加用户名,密码admin,123456
use admin
db.createUser({user:"admin",pwd:"123456",roles: [{role:"root",db: "admin"}]})
创建用户,此时的mongodb仍然是以匿名方式登陆的,如果想要远程登陆用户名和密码,还需要进行如下配置。
1.重新安装mongodb服务,
net stop MongoDB //停止服务
sc delete MongoDB //删除服务
2.重新使用管理员身份打开命令行
mongod.exe --auth --config "D:\ mongodb-4.2.0\conf\mongod.cfg" --install
这样安装完之后就是以用户身份进行登陆了,重启服务后使用mongo进如mongodb
此时没有登陆的情况下,不会输出数据库内容
使用db.auth("admin","123456")进行登陆,重新输入show dbs
发现
mongo的客户端工具可以使用robomongo 下载地址:https://robomongo.org
输入host、端口、用户名、密码即可
2.整合springboot
新建springboot项目,添加依赖
pom.xml
|
application.yml
spring: datasource: url: jdbc:mysql://localhost/my_test?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true driver-class-name: com.mysql.jdbc.Driver username: root password: 123 data: mongodb: uri: mongodb://admin:123456@localhost:27017 database: test authentication-database: admin |
注意:此处需要配置spring的数据源,否则的话报如下异常
这个mongodb的配置网上有很多模板,但是我在本地运行的时候,只有上面那样配置才是可以正常运行的,大家可以参考一下。
目录结构:
project.java
package huangwei.mongotest;
/**
* @Description TODO
* @Author haydon
* @Date 2019/8/20 20:06
*/
public class Project {
private Integer pid;
private String serviceName;
public Integer getPid() {
return pid;
}
public void setPid(Integer pid) {
this.pid = pid;
}
public String getServiceName() {
return serviceName;
}
public void setServiceName(String serviceName) {
this.serviceName = serviceName;
}
@Override
public String toString() {
return "Project{" +
"pid=" + pid +
", serviceName='" + serviceName + '\'' +
'}';
}
}
projectController.java
package huangwei.mongotest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* @Auther: shup
* @Date: 2019/3/24 23:13
* @Description: TODO
*/
@RestController
public class ProjectController {
@Resource
private MongoTemplate mongoTemplate;
@GetMapping("/test1")
public void test1(@RequestParam int pid){
Project p1 = new Project();
p1.setPid(pid);
p1.setServiceName("宿舍楼建设");
Project project = mongoTemplate.insert(p1);
System.out.println(project);
}
}
这样配置完了之后,运行即可。