大师网-带你快速走向大师之路 解决你在学习过程中的疑惑,带你快速进入大师之门。节省时间,提升效率

MongoTemplate 独立使用

spring-boot 的全家桶是真的好用,包括MongoTemplate在内,但是假如我们的程序是普通的java程序或者scala,不需要那么多的依赖包怎么办?能不能单独使用MongoTemplate呢,答案肯定是可以的。

image.png

使用演示

依赖

compile group: 'org.mongodb', name: 'mongo-java-driver', version: '3.7.1'
compile(group: 'org.springframework.data', name: 'spring-data-mongodb', version: '2.0.8.RELEASE'){
        exclude group: 'org.slf4j'
    }

测试例子

MongoClientOptions.Builder mongoBuilder = new MongoClientOptions.Builder();
mongoBuilder.maxWaitTime(1000*60*3);
mongoBuilder.connectTimeout(60*1000*3);    //与数据库建立连接的timeout设置为1分钟
mongoBuilder.minConnectionsPerHost(1);
MongoClientURI mongoClientURI = new MongoClientURI("mongodb://root:root@demo.com:27017/logs?authSource=admin",mongoBuilder);
SimpleMongoDbFactory mongoDbFactory = new SimpleMongoDbFactory(mongoClientURI);
MongoTemplate mongoTemplate = new MongoTemplate(mongoDbFactory);
System.out.println(mongoTemplate.count(new Query(),"collection"));
try {
      mongoDbFactory.destroy();
} catch (Exception e) {
    e.printStackTrace();
}