Springboot配置MongoDB连接
2019-08-16 10:25:07来源:博客园 阅读 ()
Springboot配置MongoDB连接
之前有个项目,用的是Springboot框架,对接的数据库是mongodb,当时花了一些时间去做这个配置MongoDB的连接,现在把这个过程记录下来,以免遗忘。
一、在pom中添加依赖。
<!-- 增加mongodb支持 -->
|
二、配置数据源
在项目中,使用的配置文件是yaml格式的,所以配置信息如下:
spring:
|
如果使用的是properties格式的话,配置信息则是;
spring.data.mongodb.uri= mongodb://地址
|
三、在实体中添加注解
在实体添加@Document注解,collection= "对应的表名"。
在属性上添加@Filed注解,值为对应的字段名。
@Getter
|
四、在业务层使用MongoDb的方法:
@Service } |
五、MongoTemplate常使用的方法
1.插入
|
2.删除
|
3. 修改
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(某个值); Query query = new Query(criteria); mongoTemplate.find(query, Object.class); 4.模糊查询 Pattern pattern = Pattern.compile("^.*" + searchKey + ".*$");//这里时使用的是正则匹配,searchKey是关键字,接口传参,也可以自己定义。 Criteria criteria = Criteria.where("_id").regex(pattern); mongoTemplate.find(query, Object.class); 5.分页查询 Query query = new Query(); query.skip("跳过的数据条数").limit("一页的数据条数"); mongoTemplate.find(query, Object.class); 6.聚合查询 Aggregation aggregation1 = Aggregation.newAggregation(Aggregation.group("sex").count().as("peopleCount"));//这里的聚合条件由自己定义 AggregationResults<BasicDBObject> outputTypeCount1 = mongoTemplate.aggregate(aggregation1, "User", BasicDBObject.class);//取出的结果需要自行进行处理,比如可以用getMappedResults来转换 |
六、增强配置
如果我们在项目中需要管理MongoDB的最大连接时长、socket保持活跃、最大等待时长等,那么我们在pom文件中需要引入一个增强管理包。
<!-- 增加mongoplus支持 -->
|
同时在项目启动类SpringBootMainApplication上添加一个注解@EnableMongoPlus。
我们就可以在配置文件中添加这些配置了。
spring: |
原文链接:https://www.cnblogs.com/kylne/p/11193878.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- springboot2配置JavaMelody与springMVC配置JavaMelody 2020-06-11
- SpringBoot 2.3 整合最新版 ShardingJdbc + Druid + MyBatis 2020-06-11
- 掌握SpringBoot-2.3的容器探针:实战篇 2020-06-11
- nacos~配置中心功能~springboot的支持 2020-06-10
- SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后 2020-06-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash