springMVC操作mongoDB增删改查

下面是mongoDb简单的增删改查(新闻类)

 

附:query.addCriteria(Criteria.where("modelId").ne("").ne(null));  //非空
    query.with(new Sort(new Order(Direction.DESC, "ct")));  //倒叙

多个字段排序:第一排序按照sort降序,第二排序按照ct降序
    query.with(new Sort(Direction.DESC, "sort").and(new Sort(Direction.DESC,"ct"))); 

public class NewsHelpService {
       
    @Resource
    private MongoTemplate mongoTemplate;
   
//add
    public void insert(NewsHelp newsHelp) {

        mongoTemplate.insert(newsHelp);
        
    }

//select
    public Pagination<NewsHelp> findNewsHelpAll(String type, String title, String id, Integer pageNo,
            Integer pageSize) {
        
//        QueryPage page = QueryPage.build(pageNo, pageSize);
        MandoAssert.notNull(type, "类型不能为空");
       
        Criteria criteria = Criteria.where("type").is(type);
        if (title!=null) {
            Pattern pattern = Pattern.compile(title, Pattern.CASE_INSENSITIVE); //模糊查询
            criteria.andOperator(Criteria.where("title").regex(pattern));
        }
        if (id!=null) {
            criteria.andOperator(Criteria.where("id").is(id));
        }
        Query query = BasicQuery.query(criteria);
        
        long total = mongoTemplate.count(query, NewsHelp.class);
        Pagination<NewsHelp> newsHelps = new Pagination<NewsHelp>(pageNo, pageSize);
        
        int skip = (pageNo-1)*pageSize;
        if (pageSize<1) {
            query.skip(skip);// skip相当于从那条记录开始
            query.limit(pageSize);// 从skip开始,取多少条记录
        }
        List<NewsHelp> datas = mongoTemplate.find(query, NewsHelp.class);
         
        newsHelps.setData(datas);//获取数据    
        
        newsHelps.setTotal((int)total);
        
        return newsHelps;
    }

//selectOne
    public NewsHelp findNewsHelp(String id) {
        
        Query query = BasicQuery.query(Criteria.where("id").is(id));
        
        NewsHelp newsHelp = mongoTemplate.findOne(query, NewsHelp.class);
        return newsHelp;
    }

    // update 新闻类
    public void updateNewsHelp(NewsHelp help) { 
        MandoAssert.notNull(help.getId(), "ID不能为空");
        Update update = new Update();
        
        if(null!=help.getTops()){
            update.set("tops", help.getTops());
        }
        if(StringUtils.isNotEmpty(help.getTitle())){
            update.set("title", help.getTitle());
        }
        if(StringUtils.isNotEmpty(help.getContent())){
            update.set("content", help.getContent());
        }
        update.set("modifyDate", new Date());
        
        mongoTemplate.updateMulti(Query.query(Criteria.where("id").is(help.getId())),update,NewsHelp.class);
        
    }

 //delete
    public void delNewsHelp(List<String> ids) {

        ids.stream().forEach(id -> {
            Query query = BasicQuery.query(Criteria.where("id").is(id));

            mongoTemplate.findAndRemove(query, NewsHelp.class);
        });
    }

}

偶遇晨光原创

 

下面会讲解一下springMVC+mongodb配置

 

转载于:https://www.cnblogs.com/chenyq/p/5416310.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值