前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【开发日记】SpringBoot中使用MongoDB

【开发日记】SpringBoot中使用MongoDB

作者头像
全栈开发日记
发布2022-08-30 20:11:42
3050
发布2022-08-30 20:11:42
举报
文章被收录于专栏:全栈开发日记

1、引入依赖

代码语言:javascript
复制
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

2、配置项

代码语言:javascript
复制
spring: 
    data:
      # MongoDB数据库
      mongodb:
        host: 127.0.0.1 # 连接地址
        port: 27017 # 端口
        database: test # 连接数据库
        username: root # 用户名
        password: "123456" # 密码
        authentication-database: admin # 验证数据库(可选)

3、引入模板

代码语言:javascript
复制
@Autowired
private MongoTemplate mongoTemplate;

4、增删查改

查询

代码语言:javascript
复制
Criteria criteria = Criteria.where("key").is("测试");
Query query = Query.query(criteria);
MongoTest one = mongoTemplate.findOne(query, MongoTest.class);

分页查询

代码语言:javascript
复制
Query query = Query.query(new Criteria()).skip(0).limit(10);
List<MongoTest> mongoTests = mongoTemplate.find(query, MongoTest.class);

查询从第0条数据起的10个数据。

增加

代码语言:javascript
复制
MongoTest test = new MongoTest();
test.setKey("测试1");
test.setValue("值1");
MongoTest test1 = mongoTemplate.insert(test, "test");

插入一条key为‘测试1’,value为‘值1’的数据到集合‘test’。

更新

代码语言:javascript
复制
Criteria criteria = new Criteria();
criteria.orOperator(Criteria.where("key").is("测试"), Criteria.where("key").is("测试1"));
Query query = Query.query(criteria);
Update update1 = Update.update("value", "批量更新");
UpdateResult test = mongoTemplate.updateMulti(query, update1, "test");

将key为‘测试’或者‘测试1’的数据value改为‘批量更新’。

删除

代码语言:javascript
复制
Criteria criteria = Criteria.where("key").is("测试").and("value").is("批量更新");
Query query = Query.query(criteria);
DeleteResult remove = mongoTemplate.remove(query,"test");

将集合名称为test中的key为'测试'并且value为‘批量更新’的数据删除。

5、集合操作

创建集合

代码语言:javascript
复制
mongoTemplate.createCollection("createCollection");

删除集合

代码语言:javascript
复制
mongoTemplate.dropCollection("createCollection");

判断集合是否存在

代码语言:javascript
复制
boolean exists = mongoTemplate.collectionExists("createCollection");

获取集合中数据总数

代码语言:javascript
复制
long count = mongoTemplate.count(new Query(), "test");
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 全栈开发日记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、引入依赖
  • 2、配置项
  • 3、引入模板
  • 4、增删查改
    • 查询
      • 分页查询
        • 增加
          • 更新
            • 删除
            • 5、集合操作
              • 创建集合
                • 删除集合
                  • 判断集合是否存在
                    • 获取集合中数据总数
                    相关产品与服务
                    云数据库 MongoDB
                    腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档