文章目录
Service
-
-
- Service
- 测试
-
在com.tensquare.spit.service.SpitService中 完善saveSpit方法. 即在新增吐槽时,进行完善 首先是要初始化一些值. 其次是判断新增的吐槽有无父级节点,如果有父级的节点,那么把父级节点的回复数进行加一的操作. 用的是MongoDB的自增
/**
* 方法名: saveSpit
* 方法描述: 新增吐槽,并用分布式id生成器
* 修改日期: 2019/1/19 15:42
* @param spit
* @return void
* @author taohongchao
* @throws
*/ public void saveSpit(Spit spit) { spit.set_id(idWorker.nextId()+""); //初始化数据 spit.setPublishtime(new Date());//发布日期 spit.setVisits(0);//浏览量 spit.setShare(0);//分享数 spit.setThumbup(0);//点赞数 spit.setComment(0);//回复数 spit.setState("1");//状态 //判断当前新增的吐槽,有无父节点, 如果有父节点,那么其对应的父节点要加一 if (spit.getParentid() != null && !"".equals(spit.getParentid())) { //把其父节点的回复数进行自增加一的操作 Query query = new Query(); //查询条件为父节点的id query.addCriteria(Criteria.where("_id").is(spit.getParentid())); Update update = new Update(); //把父节点的回复数进行加一的操作 update.inc("comment", 1); mongoTemplate.updateFirst(query, update, "spit"); } spitDao.save(spit); }
测试
启动项目,进行测试
首先发送根据id查询的请求,查询id为1的数据,可以看到其回复数comment字段为null,代表其回复数为0
新增一条吐槽,指定其父节点的id为1
再次查询id为1的吐槽
可以看到其回复数字段加1了
