当前位置: 首页 > news >正文

做食材的网站哈尔滨网站制作策划

做食材的网站,哈尔滨网站制作策划,重庆网络公司排行榜,wordpress数据库访问优化【MongoDB】SpringBoot整合MongoDB 文章目录 【MongoDB】SpringBoot整合MongoDB0. 准备工作1. 集合操作1.1 创建集合1.2 删除集合 2. 相关注解3. 文档操作3.1 添加文档3.2 批量添加文档3.3 查询文档3.3.1 查询所有文档3.3.2 根据id查询3.3.3 等值查询3.3.4 范围查询3.3.5 and查…【MongoDB】SpringBoot整合MongoDB 文章目录 【MongoDB】SpringBoot整合MongoDB0. 准备工作1. 集合操作1.1 创建集合1.2 删除集合 2. 相关注解3. 文档操作3.1 添加文档3.2 批量添加文档3.3 查询文档3.3.1 查询所有文档3.3.2 根据id查询3.3.3 等值查询3.3.4 范围查询3.3.5 and查询3.3.6 or查询3.3.7 and or 查询3.3.8 排序3.3.9 分页查询3.3.10 查询总条数3.3.11 去重3.3.12 json字符串查询 3.4 修改文档3.4.1 更新单条文档3.4.2 批量更新文档3.4.3 修改或插入文档 3.5 删除文档3.5.1 删除所有文档3.5.2 条件删除 0. 准备工作 引入依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-mongodb/artifactId /dependency1. 集合操作 1.1 创建集合 创建一个 ”products“ 集合如果不存在则创建存在则不创建。 Test public void createCollection() {//不存在集合则创建if (!mongoTemplate.collectionExists(products)) {mongoTemplate.createCollection(products);} }1.2 删除集合 Test public void dropCollection() {mongoTemplate.dropCollection(products); }2. 相关注解 Document 修饰范围用在类上作用用来映射这个类的一个对象为 mongo 中一条文档数据属性{value、collection} 用来指定操作的集合名称 Id 修饰范围用在成员变量、方法上作用用来将成员变量的值映射为文档的 _id 的值 Field 修饰范围用在成员变量、方法上作用用来将成员变量以及值映射为文档中一个 keyvalue 对属性{namevalue} 用来指定在文档中key的名称默认为成员变量名 Transient 修饰范围用在成员变量、方法上作用用来指定某个成员变量不参与文档的序列化 3. 文档操作 首先创建一个 User 类给它一些基本属性。 Data AllArgsConstructor NoArgsConstructor //表示类实例代表mongo中一条文档 Document(users) public class User {private Integer id;private String name;private Double salary;private Date birthday; }3.1 添加文档 向 users 集合中添加文档 Test public void saveDocument() {User user new User(1, zhj, 25000.0, new Date());//mongoTemplate.save(user);mongoTemplate.insert(user); }insert()插入重复数据时该方法会报异常提示主键重复。save()对已经存在的数据进行更新。它的功能就是 saveOrUpdate 3.2 批量添加文档 Test public void batchSaveDocument() {ListUser users Arrays.asList(new User(3, 张三, 25000.0, new Date()), new User(4, 李四, 25000.0, new Date()));mongoTemplate.insert(users,User.class); }批量添加建议使用 insert() 方法可以一次性插入整个数据效率更高。 3.3 查询文档 3.3.1 查询所有文档 ListUser users mongoTemplate.findAll(User.class); //ListUser users1 mongoTemplate.findAll(User.class, users);3.3.2 根据id查询 User user mongoTemplate.findById(1, User.class);3.3.3 等值查询 ListUser users1 mongoTemplate.find(Query.query(Criteria.where(name).is(zs)), User.class);3.3.4 范围查询 ListUser users2 mongoTemplate.find(Query.query(Criteria.where(salary).gt(30000)), User.class);3.3.5 and查询 ListUser users3 mongoTemplate.find(Query.query(Criteria.where(name).is(zs).and(salary).is(25000)), User.class);3.3.6 or查询 Criteria criteria new Criteria(); criteria.orOperator(Criteria.where(name).is(张三),Criteria.where(name).is(李四) ); ListUser users4 mongoTemplate.find(Query.query(criteria), User.class);3.3.7 and or 查询 ListUser users5 mongoTemplate.find(Query.query(Criteria.where(salary).is(25000.0).orOperator(Criteria.where(name).is(zs))), User.class);3.3.8 排序 Query query new Query(); query.with(Sort.by(Sort.Order.asc(id))); ListUser users6 mongoTemplate.find(query, User.class);3.3.9 分页查询 Query pageQuery new Query(); //查询第一页数据每页展示两条数据 pageQuery.with(Sort.by(Sort.Order.desc(id))).skip(0).limit(2); ListUser users7 mongoTemplate.find(pageQuery, User.class);3.3.10 查询总条数 long count mongoTemplate.count(new Query(), User.class); System.out.println(总条数为 count);3.3.11 去重 ListString names mongoTemplate.findDistinct(new Query(), name, User.class, String.class);3.3.12 json字符串查询 BasicQuery basicQuery new BasicQuery({name:zs}); ListUser users8 mongoTemplate.find(basicQuery, User.class);3.4 修改文档 3.4.1 更新单条文档 Update update new Update(); update.set(salary,300000.0); //更新符合条件的第一条数据 mongoTemplate.updateFirst(Query.query(Criteria.where(name).is(zs)),update,User.class);3.4.2 批量更新文档 Update update new Update(); update.set(salary,300000.0); //将所有满足条件的文档都修改 mongoTemplate.updateMulti(Query.query(Criteria.where(name).is(zs)),update,User.class);3.4.3 修改或插入文档 Update update new Update(); update.set(id,6); update.set(salary, 300000.0); //没有符合条件的数据则插入数据 mongoTemplate.upsert(Query.query(Criteria.where(name).is(ls)),update,User.class);如果没有包含”ls“这条文档那么就会插入”ls“这条文档但是如果id重复那么就会抛出异常。 Update update new Update(); update.set(salary, 300000.0);//没有符合条件的数据则插入数据 UpdateResult upsert mongoTemplate.upsert(Query.query(Criteria.where(name).is(ww)), update, User.class);//获取本次修改记录条数 long modifiedCount upsert.getModifiedCount(); System.out.println(modifiedCount); //获取本次匹配的记录条数 long matchedCount upsert.getMatchedCount(); System.out.println(matchedCount); //当集合种没有对应的文档那么就插入文档获得插入文档自动生成的id System.out.println(upsert.getUpsertedId());3.5 删除文档 3.5.1 删除所有文档 mongoTemplate.remove(new Query(),User.class);3.5.2 条件删除 mongoTemplate.remove(Query.query(Criteria.where(name).is(ls)),User.class);
http://www.pierceye.com/news/964454/

相关文章:

  • 威海市网站建设微信在线登录平台
  • 2014网站设计成都网站设计合理柚v米科技
  • 建设自己网站需要多钱网站规划与设计就业
  • 用flash做的网站欣赏手机网站图片切换jquery
  • 昆明做网站seo网站推广策略什么时候
  • 网站添加 百度商桥wordpress 友情链接 代码
  • 一鸿建设设计网站百家号排名
  • 网站最新一次改版时间什么意思电商平台应该如何推广
  • 网站设计制作程序网站开发列表
  • 企业网站建设需要哪些费用做算法的网站
  • 很大气的网站 营销js特效网站展示
  • 南宁建站程序成都新线加网站建设
  • 用微软雅黑做网站可以吗wordpress游客发帖插件
  • 网站备案怎样提交管局网页电商设计
  • 郑州华恩科技做网站怎么样网络竞价推广托管公司
  • 都江堰住房和城乡建设厅网站哈尔滨网站建设方案维护
  • 九江网站网站建设原始传奇经典复古
  • 宽屏营销型网站源码安微省住房和城乡建设厅网站
  • 做暖视频网站免费搜索引擎营销的模式有
  • 网站建设需要的条件榆林北京网站建设
  • 分类信息网站推广的意义wordpress安装教程wamp
  • 免费自助建站全系统建设银行永泰支行网站
  • 建网络商城网站如何开公司做网站
  • 长春网站制作色块网站设计
  • 通明建设网站网站怎么黑
  • 学校网站怎么查询录取html5浏览器
  • 网站开发 技术问题页面模版 公众号
  • 宜阳县网站建设网络运营者应当为()
  • 做网站的人能看到浏览的人的信息吗青岛市最大的网络公司是哪里
  • 网站建设 千助黄冈网站推广软件ios