下面是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")));

  1. public class NewsHelpService {
  2.  
  3. @Resource
  4. private MongoTemplate mongoTemplate;
  5.  
  6. //add
  7. public void insert(NewsHelp newsHelp) {
  8.  
  9. mongoTemplate.insert(newsHelp);
  10.  
  11. }
  12.  
  13. //select
  14. public Pagination<NewsHelp> findNewsHelpAll(String type, String title, String id, Integer pageNo,
  15. Integer pageSize) {
  16.  
  17. // QueryPage page = QueryPage.build(pageNo, pageSize);
  18. MandoAssert.notNull(type, "类型不能为空");
  19.  
  20. Criteria criteria = Criteria.where("type").is(type);
  21. if (title!=null) {
  22. Pattern pattern = Pattern.compile(title, Pattern.CASE_INSENSITIVE); //模糊查询
  23. criteria.andOperator(Criteria.where("title").regex(pattern));
  24. }
  25. if (id!=null) {
  26. criteria.andOperator(Criteria.where("id").is(id));
  27. }
  28. Query query = BasicQuery.query(criteria);
  29.  
  30. long total = mongoTemplate.count(query, NewsHelp.class);
  31. Pagination<NewsHelp> newsHelps = new Pagination<NewsHelp>(pageNo, pageSize);
  32.  
  33. int skip = (pageNo-1)*pageSize;
  34. if (pageSize<1) {
  35. query.skip(skip);// skip相当于从那条记录开始
  36. query.limit(pageSize);// 从skip开始,取多少条记录
  37. }
  38. List<NewsHelp> datas = mongoTemplate.find(query, NewsHelp.class);
  39.  
  40. newsHelps.setData(datas);//获取数据
  41.  
  42. newsHelps.setTotal((int)total);
  43.  
  44. return newsHelps;
  45. }
  46.  
  47. //selectOne
  48. public NewsHelp findNewsHelp(String id) {
  49.  
  50. Query query = BasicQuery.query(Criteria.where("id").is(id));
  51.  
  52. NewsHelp newsHelp = mongoTemplate.findOne(query, NewsHelp.class);
  53. return newsHelp;
  54. }
  55.  
  56. // update 新闻类
  57. public void updateNewsHelp(NewsHelp help) {
  58. MandoAssert.notNull(help.getId(), "ID不能为空");
  59. Update update = new Update();
  60.  
  61. if(null!=help.getTops()){
  62. update.set("tops", help.getTops());
  63. }
  64. if(StringUtils.isNotEmpty(help.getTitle())){
  65. update.set("title", help.getTitle());
  66. }
  67. if(StringUtils.isNotEmpty(help.getContent())){
  68. update.set("content", help.getContent());
  69. }
  70. update.set("modifyDate", new Date());
  71.  
  72. mongoTemplate.updateMulti(Query.query(Criteria.where("id").is(help.getId())),update,NewsHelp.class);
  73.  
  74. }
  75.  
  76. //delete
  77. public void delNewsHelp(List<String> ids) {
  78.  
  79. ids.stream().forEach(id -> {
  80. Query query = BasicQuery.query(Criteria.where("id").is(id));
  81.  
  82. mongoTemplate.findAndRemove(query, NewsHelp.class);
  83. });
  84. }
  85.  
  86. }

偶遇晨光原创

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

springMVC操作mongoDB增删改查的更多相关文章

  1. MongoDB(六)java操作mongodb增删改查

    java操作mysql数据库的代码我们已经了如指掌了.增删改查,java对mongodb数据库也是类似的操作,先是数据库连接.再是进行操作. 首先我们进入进入admin数据库.然后建立自己的数据库te ...

  2. MongoDB - 增删改查及聚合操作

    目录 MongoDB - 增删改查及聚合操作 一. 数据库操作(database) 1. 创建及查看库 2. 删除库 二. 集合collectionc=操作(相当于SQL数据库中的表table) 1. ...

  3. 数据库——MongoDB增删改查

    MongoDB增删改查操作 本文包含对数据库.集合以及文档的基本增删改查操作 数据库操作 #1.增 use config #如果数据库不存在,则创建并切换到该数据库,存在则直接切换到指定数据库. #2 ...

  4. 使用python操作XML增删改查

    使用python操作XML增删改查 什么是XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输 ...

  5. js操作indexedDB增删改查示例

    js操作indexedDB增删改查示例 if ('indexedDB' in window) { // 如果数据库不存在则创建,如果存在但是version更大,会自动升级不会复制原来的版本 var r ...

  6. MySQL数据分析(16)— 数据操作之增删改查

    前面我们说学习MySQL要从三个层面,四大逻辑来学,三个层面就是库层面,表层面和数据层面对吧,数据库里放数据表,表里放数据是吧,大家可以回忆PPT中jacky的这图,我们已经学完了库层面和表层面,从本 ...

  7. Redis简单的数据操作(增删改查)

    #Redis简单的数据操作(增删改查): 字符串类型 string 1. 存储: set key value 127.0.0.1:6379> set username zhangsan OK 2 ...

  8. MongoDB基础入门002--基本操作,增删改查

    一.这里只是演示最基本的操作,更多的信息可以去官网.https://docs.mongodb.com/manual 打开一个cmd,输入mongo命令打开shell,其实这个shell就是mongod ...

  9. 2. MongoDB基本操作 —— 用Mongo.exe操作数据库增删改查

    一.开篇 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(collection).文档对象 ...

随机推荐

  1. python 程序构架

    http://blog.csdn.net/heyabo/article/details/8806176

  2. CsvReader,CsvWriter的使用以及解决中文乱码

    public void Csv(){ try { String[] stringList; String sourceFilePath = "D:\\111\\前海自身.csv"; ...

  3. 【技术无关】GPS转北斗卫星定位 系统调研

    前言 陆地交通运输是当前GPS卫星定位系统最大的应用领域,我省自08年实施卫星定位系统建设以来,在车辆监控和调度方面发挥了突出的作用:主要功能包括车辆跟踪.线路规划和导航.信息查询.交通指挥.紧急援助 ...

  4. PHP 调试

    $log_path = '/data0/www/html/hejungw/static/log/uploadlog/'; $log = $log_path . date('Y-m-d') . '.lo ...

  5. 12-8下午 php语法

    <?php //var_dump(empty($a)); //判断变量是否为空//var_dump(isset($a)); //判断变量是否定义//$a = 10;//unset($a); // ...

  6. day13_API第三天

    1.StringBuffer类(掌握) 1.概念      字符串缓冲区类 2.机制      StringBuffer采用的是缓冲区机制. 一开始,首先开辟一些空间,然后,随着数据的增多,还可以继续 ...

  7. python的复制,深拷贝和浅拷贝的区别

    在python中,对象赋值实际上是对象的引用.当创建一个对象,然后把它赋给另一个变量的时候,python并没有拷贝这个对象,而只是拷贝了这个对象的引用 一般有三种方法, alist=[1,2,3,[& ...

  8. xmind的第五天笔记

  9. nginx配置文件重写url不带index.php

    如题: 代码 location / { root /项目目录/; index index.php; if (-f $request_filename/index.php){ rewrite (.*) ...

  10. ups机制下停电提前关闭oracle数据库

    思路:在一个受ups保护的机器A1上写脚本,几分钟(如半分钟)ping不在ups保护的机器B,如果几次(如5次)ping不同,这时我们认为将要停电,此时脚本执行正常关闭受ups保护的机器上数据库的命令 ...