springboot-mongodb 添加、删除

https://blog.csdn.net/congcong68/article/details/47064959

spring  Data  MongoDB 的MongoTemplate提供了两种存储文档方式,分别是save和insert方法,这两种的区别:

  (1)save :我们在新增文档时,如果有一个相同_ID的文档时,会覆盖原来的。

  (2)insert:我们在新增文档时,如果有一个相同的_ID时,就会新增失败。

 

  1.接下来我们分别介绍的两种方式的具体语法。

 

(1)Save方式

        方法:

        1)void save (Object objectToSave) 保存文档到默认的集合。

        2)void save(Object objectToSave, String collectionName) 对指定的集合进行保存。

(2) Insert方式

     方法:

      1)void insert(Object objectToSave) 保存文档到默认的集合。

      2)void insertAll(Object objectsToSave) 批量添加到默认的集合。

      3)void insert(Object objectToSave, String collectionName) 对指定的集合进行保存。

    (1)save :我们在新增文档时,如果有一个相同_ID的文档时,会覆盖原来的。

    (2)insert:我们在新增文档时,如果有一个相同的_ID时,就会新增失败。

     (3)MongoDB提供了insertAll批量添加,可以一次性插入一个列表,效率比较高,save则需要一个一个的插入文档,效率比较低。
insert:
  public void insert(User object,String collectionName) {  
        mongoTemplate.insert(object, collectionName);  
    }  

query:

 @Override  
    public User findOne(Map<String,Object> params,String collectionName) {  
         return mongoTemplate.findOne(new Query(Criteria.where("id").is(params.get("id"))), User.class,collectionName);    
    }  
  
    @Override  
    public List<User> findAll(Map<String,Object> params,String collectionName) {  
        List<User> result = mongoTemplate.find(new Query(Criteria.where("age").lt(params.get("maxAge"))), User.class,collectionName);  
        return result;  
    }  

update:

 @Override
    public void updateDemo(DemoEntity demoEntity) {
        Query query = new Query(Criteria.where("id").is(demoEntity.getId()));

        Update update = new Update();
        update.set("title", demoEntity.getTitle());
        update.set("description", demoEntity.getDescription());
        update.set("by", demoEntity.getBy());
        update.set("url", demoEntity.getUrl());

        mongoTemplate.updateFirst(query, update, DemoEntity.class);
    }

删除

mongoTemplate.remove(new Query(Criteria.where("id").is(params.get("id"))),User.class,collectionName); 

删除集合

dropCollection(String collectionName);  



猜你喜欢

转载自blog.csdn.net/zhuchunyan_aijia/article/details/80336987