美文网首页
springboot 整合mongodb

springboot 整合mongodb

作者: Equals__ | 来源:发表于2020-04-01 16:52 被阅读0次

    前言

    由于新加入的公司涉及到mongodb,在此前从未使用过mongodb,所以自己先写一个小小的demo记录springboot 整合mongodb.搭建完最基本的springboot项目后,主要分为三步: 1.引入maven 依赖 2. yml 配置 mongodb 信息 3. 具体的controller层操作mongoTemplate.

    1.引入maven 依赖

      springboot 版本是2.1.2, 引入的spring-boot-starter-data-mongodb 版本为 2.1.7.RELEASE.
    
    <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-mongodb</artifactId>
                <version>2.1.7.RELEASE</version>
     </dependency>
    

    2. yml 配置

    由于mongodb 默认不需要认证登录,所以直接连接即可:

    spring:
      data:
        mongodb:
          uri: mongodb://localhost:27017/mongodb_test
    

    若是MongoDB中存在该数据库,则连接,若不存在,则会自动创建.
    若是需要用户名密码则配置对应账户信息

    spring:
      data:
        mongodb:
          uri: mongodb://localhost:27017/springboot_mongodb
          username: root
          password: 123456
    

    出现以下情况则连接成功


    image.png

    3. 增删改查操作

    具体的user 实体类

    @Data
    public class User {
        private int id;
        private String name;
        private String sex;
    }
    
    

    3.1 新增操作

    @GetMapping("/insert")
     public void MongoInsert(){
            User user = new User();
            user.setId(1);
            user.setName("hzp");
            user.setSex("男");
            mongoTemplate.insert(user);
            user.setId(2);
            user.setName("hzp2");
            user.setSex("男");
            mongoTemplate.insert(user);
            log.info("插入成功!");
        }
    

    3.2 删除操作

    @PostMapping("/delete")
        public void MongoDBDelete(){
            User user = new User();
            user.setId(1);
            mongoTemplate.remove(user);
            log.info("删除成功");
            List<User> users=mongoTemplate.findAll(User.class);
            users.forEach(u -> {
                log.info(u.toString());
            });
        }
    

    3.3 更新操作

     @PostMapping("/update")
        public void MongoDBUpdate(){
            mongoTemplate.updateFirst(query(where("id").is("1")), Update.update("name","hzp1"),User.class);
            log.info("更新成功");
        }
    

    3.4 查找操作

    @GetMapping("/select")
        public void MongoDBSelect(){
            List<User> users=mongoTemplate.findAll(User.class);
            users.forEach(u -> {
                log.info(u.toString());
            });
        }
    

    相关文章

      网友评论

          本文标题:springboot 整合mongodb

          本文链接:https://www.haomeiwen.com/subject/zryauhtx.html