版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/monica1_1/article/details/82865202
1、增加或保存
public void saveOrUpdateExperiment(Experiment experiment) {
if (StringUtil.hasText(experiment.getExpNo())) {
Query query = new Query();
Criteria criteria = Criteria.where("exp_no").is(experiment.getExpNo());
query.addCriteria(criteria);
Experiment exp = mongoTemplate.findAndRemove(query, Experiment.class);
experiment.setCreator(exp.getCreator());
experiment.setCreateDate(exp.getCreateDate());
}
mongoTemplate.save(experiment);
}
2、查询一条记录
public Experiment getExperimentByExpNo(String expNo) {
Query query = new Query();
Criteria criteria = Criteria.where("exp_no").is(expNo);
query.addCriteria(criteria);
return mongoTemplate.findOne(query, Experiment.class);
}
3、查询List
public List<Project> getProjects(String creator) {
Query query = new Query();
if (StringUtil.hasText(creator)) {
Criteria criteria = Criteria.where("creator").is(creator);
query.addCriteria(criteria);
}
return mongoTemplate.find(query, Project.class);
}
4、删除
Query query = Query.query(Criteria.where("classId").is("1"));
mongoTemplate.remove(query,"class");
5、增加
/**
* 插入用户消息
*
* @param appMsgUser
*/
@Override
public void insertMsgUser(AppMsgUser appMsgUser) {
mongoTemplate.insert(appMsgUser);
}
6、模糊查询
public List<Sample> findSamples(String memberId, SelectVo selectVo) {
Criteria criteria = Criteria.where("creator").is(memberId);
if (StringUtil.hasText(selectVo.getName())) {
Pattern pattern = Pattern.compile("^.*" + selectVo.getName() + ".*$", Pattern.CASE_INSENSITIVE);
criteria.orOperator(Criteria.where("projectNo").regex(pattern), Criteria.where("name").regex(pattern));
}
return findPageList(Query.query(criteria), Sample.class, new PageTag(selectVo.getPage(), selectVo.getPageSize()));
}
6、修改
public void modifyHitNumByNo(String no) {
Query query = new Query();
query.addCriteria(Criteria.where("sap_no").is(no));
Update update = new Update();
update.inc("hit_num", 1);
mongoTemplate.updateFirst(query, update, Project.class);
}
7、分页查询
public List<Sample> searchAllSample(String id, PageTag page) {
Query query = new Query();
query.with(new Sort(new Sort.Order(Sort.Direction.DESC, "update_date")));
int skip = (page.getCurrentPage() - 1) * page.getPageSize();
if (StringUtil.hasText(id)) {
Criteria criteria = Criteria.where("creator").is(id);
query.addCriteria(criteria);
}
query.skip(skip);// 从那条记录开始
query.limit(page.getPageSize());// 取多少条记录
return mongoTemplate.find(query, Sample.class);
}
8、计算数量
public long countSample(String id) {
Query query = new Query();
if (StringUtil.hasText(id))
query.addCriteria(Criteria.where("creator").is(id));
return mongoTemplate.count(query, Sample.class);
}
欢迎加入 CSDN技术交流群:QQ群:681223095,方便问题讨论。博主不一定长期在线,但是qq群里会有很多热心的小伙伴,大家一起讨论解决问题。
关注公众号,更多学习内容给予推送,争取每日更新