Springboot配置MongoDB连接

匿名 (未验证) 提交于 2019-12-02 23:49:02

  之前有个项目,用的是Springboot框架,对接的数据库是mongodb,当时花了一些时间去做这个配置MongoDB的连接,现在把这个过程记录下来,以免遗忘。

一、在pom中添加依赖。

<!-- 增加mongodb支持 --><dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-data-mongodb</artifactId>    <version>1.5.9.RELEASE</version></dependency>

二、配置数据源

  在项目中,使用的配置文件是yaml格式的,所以配置信息如下:

spring:  data:    mongodb:      uri: mongodb://地址

  如果使用的是properties格式的话,配置信息则是;

spring.data.mongodb.uri= mongodb://地址

三、在实体中添加注解

  在实体添加@Document注解,collection= "对应的表名"。

  在属性上添加@Filed注解,值为对应的字段名。

@Getter@Setter@Document(collection = "User")public class User {    /*    用户id:    */  @Field("id")    private String id;    /*    用户名    */    @Field("UserName")    private String userName;    /*    性别     */    @Field("sex")    private String sex;}

四、在业务层使用MongoDb的方法:

@Service
public class UserServiceImpl implements UserService {










}

五、MongoTemplate常使用的方法

  1.插入

 mongoTemplate.insert(Object);

  2.删除

 Query query=new Query(Criteria.where("_id").is(id));  mongoTemplate.remove(query,AutomaticAlarm.class); 

  Query query=new Query(Criteria.where("_id").is(id));

  Update update = Update.update("要更新的字段", "更新的值");

  mongoTemplate.updateFirst(query, update, Object.class);

  4.查询

1.查找所有

  mongoTemplate.findAll(Object.class);

2.条件查询(具体某个字段的值)

  Query query=new Query(Criteria.where("字段1").is("值1"));
  mongoTemplate.find(query, Object.class);

3.条件查询(大于小于)

  Criteria criteria = Criteria.where("字段").gte(某个值).lte(某个值);

  mongoTemplate.find(query, Object.class);

4.模糊查询

  Pattern pattern = Pattern.compile("^.*" + searchKey + ".*$");//这里时使用的是正则匹配,searchKey是关键字,接口传参,也可以自己定义。



5.分页查询





6.聚合查询

六、增强配置

    如果我们在项目中需要管理MongoDB的最大连接时长、socket保持活跃、最大等待时长等,那么我们在pom文件中需要引入一个增强管理包。

<!-- 增加mongoplus支持 --><dependency>    <groupId>com.spring4all</groupId>    <artifactId>mongodb-plus-spring-boot-starter</artifactId>    <version>1.0.0.RELEASE</version></dependency>

    同时在项目启动类SpringBootMainApplication上添加一个注解@EnableMongoPlus。

    我们就可以在配置文件中添加这些配置了。

spring:  data:    mongodb:      uri: mongodb://地址      option:        socket-keep-alive: true        max-connection-idle-time: 60000#        connect-timeout: 36000#        min-connection-per-host: 5#        threads-allowed-to-block-for-connection-multiplier: 5#        max-wait-time: 120000#        socket-timeout: 0#        max-connection-life-time: 0#        heartbeat-socket-timeout: 36000#        heartbeat-connect-timeout: 36000#        min-heartbeat-frequency: 5#        heartbeat-frequency: 10

  

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!