springboot的版本1.5.17.RELEASE。
  
  1、mongo的IP和端口
  
  在resources下的application.properties中加入如下内容
  
  spring.data.mongodb.host=localhost
  
  spring.data.mongodb.database=test
  
  spring.data.mongodb.port=27017
  
  2、引入springboot mongo依赖
  
  <dependency>
  
  <groupId>org.springframework.boot</groupId>
  
  <artifactId>spring-boot-starter-data-mongodb</artifactId>
  
  </dependency>
  
  3、使用mongoTemplate
  
  经过步骤2和步骤1之后,可以直接注入mongoTemplate了,不需要我们再显示的定义bean了。
  
  直接上代码了,如下所示,包含了保存、查询、分页查询、有条件的分页查询。
  
  import java.util.Date;
  
  import java.util.List;
  
  import lombok.extern.slf4j.Slf4j;
  
  import org.junit.Test;
  
  import org.springframework.beans.factory.annotation.Autowired;
  
  import org.springframework.data.domain.PageRequest;
  
  import org.springframework.data.domain.Pageable;
  
  import org.springframework.data.domain.Sort;
  
  import org.springframework.data.mongodb.core.MongoTemplate;
  
  import org.springframework.data.mongodb.core.query.Query;
  
  import com.mjduan.springbootmongodb.domain.User;
  
  /**
  
  * @author dmj1161859184@126.com 2018-11-27 21:19
  
  * @version 1.0
  
  * @since 1.0
  
  */
  
  @Slf4j
  
  public class MongoTemplateTest extends SpringbootMongodbApplicationTests {
  
  /**
  
  * properties中设置了属性后,就会自动配置MontoTemplate
  
  */
  
  @Autowired
  
  private MongoTemplate mongoTemplate;
  
  @Test
  
  public void testFindAll() {
  
  List<User> users = mongoTemplate.findAll(User.class);
  
  System.out.println(users);
  
  }
  
  @Test
  
  public void testAddUser(www.fengshen157.com/ ) {
  
  User user = new User();
  
  user.setAge(9);
  
  user.setAddress("address");
  
  user.setUsername("crupper");
  
  user.setDate(new Date(www.mcyllpt.com));
  
  mongoTemplate.save(user);
  
  }
  
  @Test
  
  public void testPage() {
  
  Pageable pageable = new PageRequest(1, 3);
  
  Query query = new Query();
  
  query.with(pageable);
  
  List<User> users = mongoTemplate.find(query, User.class);
  
  log.info(users.toString());
  
  }
  
  @Test
  
  public void testPageSort() {
  
  Pageable pageable = new PageRequest(1, 3);
  
  Query query = new Query();
  
  query.with(pageable);
  
  query.with(new Sort(Sort.Direction.ASC, "age"));
  
  List<User> users = mongoTemplate.find(query, User.class);
  
  log.info(users.toString());
  
  }
  
  @Test
  
  public void testPageSortMulti(www.michenggw.com) {
  
  Pageable pageable = new PageRequest(0, 6);
  
  Query query = new Query(www.lezongyule.com);
  
  query.with(pageable);
  
  query.with(new Sort(Sort.Direction.ASC, "age").and(new Sort(Sort.Direction.DESC, "date")));
  
  List<User> users = mongoTemplate.find(query, User.class);
  
  log.info(users.toString());
  
  }
  
  @Test
  
  public void testCount() {
  
  Query query = new Query();
  
  query.with(new Sort(Sort.Direction.ASC, "age").and(new Sort(Sort.Direction.DESC, "date")));
  
  long count = mongoTemplate.count(query, User.class);
  
  log.info(count + "");
  
  }
  
  }
  
  SpringbootMongodbApplicationTests如下所示:
  
  import org.junit.Test;
  
  import org.junit.runner.RunWith;
  
  import org.springframework.www.dasheng178.com boot.test.context.SpringBootTest;
  
  import org.springframework.test.context.junit4.SpringRunner;
  
  @RunWith(SpringRunner.class)
  
  @SpringBootTest
  
  public class SpringbootMongodbApplicationTests {
  
  @Test
  
  public void contextLoads() {

SpringBoot之mongoTemplate的使用的更多相关文章

  1. SpringBoot之MongoTemplate的查询可以怎么耍

    学习一个新的数据库,一般怎么下手呢?基本的CURD没跑了,当可以熟练的增.删.改.查一个数据库时,可以说对这个数据库算是入门了,如果需要更进一步的话,就需要了解下数据库的特性,比如索引.事物.锁.分布 ...

  2. SpringBoot 整合mongoDB并自定义连接池

    SpringBoot 整合mongoDB并自定义连接池 得力于SpringBoot的特性,整合mongoDB是很容易的,我们整合mongoDB的目的就是想用它给我们提供的mongoTemplate,它 ...

  3. SpringBoot整合MongoDB JPA,测试MongoRepository与MongoTemplate用法,简单增删改查+高级聚合

    源码 地址 -> https://github.com/TaoPanfeng/case/tree/master/04-mongo/springboot-mongo 一 引入依赖 <depe ...

  4. Springboot MongoTemplate

    springboot mongodb配置解析 MongoTemplate进行增删改查 mongoTemplate 手把手教springboot访问/操作mongodb(查询.插入.删除) Spring ...

  5. spring-boot支持双数据源mysql+mongo

    这里,首先想说的是,现在的web应用,处理的数据对象,有结构化的,也有非结构化的.同时存在.但是在spring-boot操作数据库的时候,若是在properties文件中配置数据源的信息,通过默认配置 ...

  6. Springboot数据访问,棒棒哒!

    Springboot对数据访问部分提供了非常强大的集成,支持mysql,oracle等传统数据库的同时,也支持Redis,MongoDB等非关系型数据库,极大的简化了DAO的代码,尤其是Spring ...

  7. SpringBoot集成Shiro并用MongoDB做Session存储

    之前项目鉴权一直使用的Shiro,那是在Spring MVC里面使用的比较多,而且都是用XML来配置,用Shiro来做权限控制相对比较简单而且成熟,而且我一直都把Shiro的session放在mong ...

  8. springboot 整合 MongoDB 实现登录注册,html 页面获取后台参数的方法

    springboot简介: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不 ...

  9. 补习系列(16)-springboot mongodb 数据库应用技巧

    目录 一.关于 MongoDB 二.Spring-Data-Mongo 三.整合 MongoDB CRUD A. 引入框架 B. 数据库配置 C. 数据模型 D. 数据操作 E. 自定义操作 四.高级 ...

随机推荐

  1. monkey测试入门3

    本文要感谢一起战斗过的点时小伙伴,程童鞋 打开开始 输入cmd 看到它的目录地址 然后把adb压缩包解压到该地址 插入数据线 打开手机设置打开开发者选项 打开USB调试 右键点击我的电脑 选择管理 左 ...

  2. php 文件上传缩略图路径分析类

    <?php //文件上传时分析路径信息 //author:songzhenghe 2014-1-24 //version 0.1 class path_ana {     private $da ...

  3. python类与对象的内置函数大全(BIF)

    关于类与对象的一些常用BIF(内置函数) 1.issubclass(class,classinfo) 含义:如果class是classinfo的子类,则返回True,否则返回false,用来判断子类关 ...

  4. docker实现跨主机连接

    实验环境: centos7系统 host1:192.168.42.128 host2:192.168.42.129 dokcer容器跨主机连接 1.使用网桥实现跨主机容器连接 2.使用Open vSw ...

  5. Pod的创建过程

    Pod是kubernetes中最小的调度单位,里面包含多个容器,也是真正运行你服务的仓库,同一个pod中容器之间资源共享(IP .网络.cpu.mem.挂载目录等). 1.  准备一个yaml(RC/ ...

  6. MyBatis思维导图

    1.初识框架技术 2.搭建MyBatis环境 3.掌握MyBatis的核心API 4.掌握MyBatis的核心配置文件:主要用于配置数据库连接和MyBatis运行时所需的各种特性 5.掌握SQL映射文 ...

  7. 对于新手来说,Python 中有哪些难以理解的概念?

    老手都是从新手一路过来的,提起Python中难以理解的概念,可能很多人对于Python变量赋值的机制有些疑惑,不过对于习惯于求根究底的程序员,只有深入理解了某个事物本质,掌握了它的客观规律,才能得心应 ...

  8. 第26次Scrum会议(11/14)【欢迎来怼】

    一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,阚博文 小组照片 二.开会信息 时间:2017/11/14 11:35~11:57,总计22min.地点:东北 ...

  9. 20135234mqy-——信息安全系统设计基础第六周学习总结

    处理器体系结构 4.1 Y86指令集体系结构 4.1.1程序员可见状态 Y86程序中的每条指令都会读取或修改处理器状态的某些部分,称为程序员可见状态. 4.1.2 Y86指令 4个指令:irmovl, ...

  10. BATA冲刺准备

    目录 第一部分 调研,评测 福大助手的bug IOS端 Android端 福大助手结构体系的思维导图 为什么开发人员没有发现这个bug 假设团队开发这款app,应注意哪些方面(架构.部署运维.微服务等 ...