SpringBoot 、MongoDB和Gradle结合链接简单Demo

SpringBoot 、MongoDB和Gradle结合链接简单Demo

MongoDB在Springboot和Gradle结合的简单Demo

MongoDB 配置

需要对gradle依赖、springboot的Yml配置文件和启动类进行修改

1.Gradle依赖

在dependencies中添加spring-boot-starter-data-mongodb和org.mongodb:mongodb-driver依赖

//mongodb
compile('org.springframework.boot:spring-boot-starter-data-mongodb')
compile ('org.mongodb:mongodb-driver:3.3.0')

2.springboot的yml配置文件

在springboot的application.yml中添加链接配置

2.1 密码配置

spring:
  # mongodb配置
  data:
    mongodb:
      username: username
      password: password
      host: 127.0.0.1
      port: 27017
      database: test

2.2无密码配置(未尝试)

spring:
  data:
    mongodb:
      uri: mongodb://127.0.0.1:20000/test

如需要多个MongoDB链接可用逗号隔开

mongodb://127.0.0.1:20000,127.0.0.1:20001,127.0.0.1:20002/test

两种方式有应该可以,但2.1使用有密码时,如果未设置密码可以试试2.2。

但切勿两种联合使用。

spring:
  data:
    mongodb:
      uri: mongodb://127.0.0.1:20000/test
      username: username
      password: password

但切勿两种联合使用。 这种方式是错误的!!!!!!!!

3.对springboot启动类进行修改

3.1@SpringBootApplication

如果使用@SpringBootApplication,无须添加任何属性

3.2 其他

@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

如果不添加可能会报错。

4.Demo

简单查询

@Test
public void testMongoTemlate() {
    Query query = new Query();
    //where 字段,is 要查询什么
    Criteria abc_jpn = Criteria.where("companyId").is("aaaaaa");
    //添加到query中
    query.addCriteria(abc_jpn).fields();
    //排序方式 根据那个字段进行排序
    Sort sort = new Sort(Sort.Direction.DESC, "_id");
    //skip跳过 limit几个(可以理解为翻页),with在加上排序
    query.skip(0).limit(1).with(sort);
    //进行查询
    List<JSONObject> jsonObjects = mongoTemplate.find(query, JSONObject.class, "clock_aaaa");
    System.out.println(jsonObjects);
}

切记find方法中如果用Json的话,一定用阿里的fastjson!!!!如果是Gson的话,会查询为空。

上一篇:3.ASP.NET全栈开发之在Vue中使用前端校验


下一篇:阿里云全面布局云原生数据库产品体系,点亮企业数据上云之路