mongotemplate 简单使用
怎么说呢,工作需要,不可能给你慢慢学的时间,一切以先解决当前jira为前提, mondb 安装不说了网上一搜就有,推荐图形管理界面 robo3t 比较直观

1.多条件查询这个比较简单
有两种方法
1Criteria.where("company_code").is(corpCode).and("emp_id").in(empIdArray)这种写法
2Criteria criatira = new Criteria();
criatira.andOperator(Criteria.where("userName").is("admin"), Criteria.where("password").is("f818fa8cf51ca364f367f0046bd014ff"));Query query = Query.query(Criteria.where("company_code").is(corpCode).and("emp_id").in(empIdArray));
//删除department_code
Update updateDepartmentCode = new Update();
updateDepartmentCode.pullAll("department_code", deptArray.toArray());
mongoTemplate.updateMulti(query, updateDepartmentCode, Constants.MONGOBD_EMPLOYEE_COLLECTION_BEGIN + corpCode.toUpperCase());
//查询并删除department
Update updateDepartment = new Update();
List<JSONObject> deptList = esDepartmentService.checkAndFindDepartment(corpCode, deptArray);
updateDepartment.pullAll("department", deptList.toArray());
mongoTemplate.updateMulti(query, updateDepartment, Constants.MONGOBD_EMPLOYEE_COLLECTION_BEGIN + corpCode.toUpperCase());
3增加多条数据
Query query = Query.query(Criteria.where("company_code").is(corpCode).and("emp_id").in(empIdArray));
//删除department_code
Update updateDepartmentCode = new Update();
updateDepartmentCode.pullAll("department_code", deptArray.toArray());
mongoTemplate.updateMulti(query, updateDepartmentCode, Constants.MONGOBD_EMPLOYEE_COLLECTION_BEGIN + corpCode.toUpperCase());
//查询并删除department
Update updateDepartment = new Update();
List<JSONObject> deptList = esDepartmentService.checkAndFindDepartment(corpCode, deptArray);
updateDepartment.pullAll("department", deptList.toArray());
mongoTemplate.updateMulti(query, updateDepartment, Constants.MONGOBD_EMPLOYEE_COLLECTION_BEGIN + corpCode.toUpperCase());
4同一个update对象不能多次使用,后面的条件会覆盖掉前面的数据。
mongotemplate 简单使用的更多相关文章
- mongoTemplate简单用法(增删改查)
分页时查找数量: public long countSample(String id) { Query query = new Query(); if (StringUtil.hasText(id)) ...
- SpringBoot整合MongoDB JPA,测试MongoRepository与MongoTemplate用法,简单增删改查+高级聚合
源码 地址 -> https://github.com/TaoPanfeng/case/tree/master/04-mongo/springboot-mongo 一 引入依赖 <depe ...
- Spring-MongoDB简单操作
1.简单的配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http: ...
- 通过java反射实现简单的关于MongoDB的对象关系映射(ORM).
通过阅读MongoDB 3.2.1的官方文档中关于java 编程发现最新的文档并没有实现对对象到Document的映射,所以自己有了利用反射实现简单的关系映射. 1.定义抽象类:AbstractMo ...
- spring集成mongodb封装的简单的CRUD
1.什么是mongodb MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. mongoDB MongoDB是一个介 ...
- mongoTemplate查询大数据过慢
先上两段代码 代码一 Query query = new Query();queryAfter.addCriteria(Criteria.where("id").in(idList ...
- Mongodb系列- spring-data-mongodb使用MongoTemplate实现分页查询
在用spring-data-mongodb框架开发的过程中,需要实现分页查询,就百度了下,没找到满意的又google了下,找到了思路. 在spring-data-mongodb 官方文档中,建议你使用 ...
- SpringBoot访问NoSQL和简单的Thymeleaf-Spring-Spring-boot整合
SpringBoot访问NoSQL SpringBoot访问Redis 在pom.xml添加boot-data-redis定义 <parent> <groupId>org.sp ...
- MongoDB 默认写入关注保存数据丢失问题与源码简单分析
MongoDB 默认写入关注可能保存数据丢失问题分析 问题描述: EDI服务进行优化,将原有MQ发送成功并且DB写入成功,两个条件都达成,响应接收订单数据成功,修改为只有有一个条件成功就响应接收数据成 ...
随机推荐
- SCUT - G - 魔法项链 - 树状数组
https://scut.online/contest/30/G 很久以前做的一个东西,当时是对R排序之后树状数组暴力统计当前区间的前缀和.每有一个元素出现在R的范围内,就解除他的同样元素的影响,在他 ...
- npm学习(一)之安装、更新以及管理npm版本
安装npm 安装前须知: npm是在Node中编写的,因此需要安装Node.js才能使用npm.可以通过Node.js网站安装npm,或者安装节点版本管理器NVM. 如果只是想开始探索npm,使用No ...
- Ubuntu配置python操作
Ubuntu16.04 安装python 查看当前python情况root@localhost:/# cd /root@localhost:/usr/bin# cd /usr/binroot@loca ...
- python socket--TCP解决粘包的方法
1.为什么会出现粘包?? 让我们基于tcp先制作一个远程执行命令的程序(1:执行错误命令 2:执行ls 3:执行ifconfig) 注意注意注意: res=subprocess.Popen(cmd.d ...
- 内置的re模块
re(正则表达式) 字符匹配: 普通字符匹配:re.findall("alex","shfalexjaf"),直接查找符合的字符 元字符: . ^ $ * ...
- fhq_treap || BZOJ 3224: Tyvj 1728 普通平衡树 || Luogu P3369 【模板】普通平衡树
题面:[模板]普通平衡树 代码: #include<cstdio> #include<cstring> #include<iostream> #include< ...
- const定义的并非是常量,而是常量索引
我第一次看const的时候,记忆中对const的定义是,定义常量. 后经过研究,定义的并非常量,而是常量索引. 有时候会遇到使用const定义数组的情况 const arr = [] arr.push ...
- python数组中在某一元素前插入数据
# 已知有一个已经排好序的数组.要求是,有一个新数据项,要求按原来的规律将它插入数组中. a=[1,2,3,4,5,6,7,8,9]num=int(input("input num:&quo ...
- 如何编译Java程序以及运行程序
一.编辑运行 二.HelloWorld程序的组成: 三.public static void main(String[] args){} 四.System.out.println("Hell ...
- 043:Django使用原生SQL语句操作数据库
Django使用原生SQL语句操作数据库 Django配置连接数据库: 在操作数据库之前,首先先要连接数据库.这里我们以配置 MySQL 为例来讲解. Django 连接数据库,不需要单独的创建一个连 ...