新项目要用到mongodb,于是在个人电脑上的虚拟环境linux上安装了下mongodb,练习熟悉下。

1、虚拟机上启动mongodb。

首先查看虚拟机ip地址,忘了哈~~

命令行>ifconfig

mongodb安装目录bin>sudo ./mongod -f mongodb.conf

检查是否已经启动:>netstat -lanp|grep "27017"

也可以用客户端连接:

2、用SpringBoot建立mongoProj工程;

2.1、配置文件设置

pom.xml

        <!-- mongodb 配置 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

首先单数据源配置,具体如下:

#mongodb 配置
spring.data.mongodb.uri=mongodb://long:long@192.168.0.102:27017/long

2.2、编写实体类,本例mongo中的集合随便起的名字,这里创建一个Person类

package com.example.demo.dto;

public class Person {
private static final long serialVersionUID = -3258839839160856613L; private String name; private int age; private String gender; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public String getGender() {
return gender;
} public void setGender(String gender) {
this.gender = gender;
} @Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
", gender='" + gender + '\'' +
'}';
}
}

2.3、创建DAO层:

package com.example.demo.dao;

import com.example.demo.dto.Person;

public interface IPersonDao {
public Person findPersonByName(String name);
}
package com.example.demo.dao.impl;

import com.example.demo.dao.IPersonDao;
import com.example.demo.dto.Person;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Repository; @Repository
public class PersonDaoImpl implements IPersonDao { @Autowired
private MongoTemplate mongoTemplate; @Override
public Person findPersonByName(String name) {
Query query=new Query(Criteria.where("name").is(name));
//这里需要指定col集合
Person p = mongoTemplate.findOne(query,Person.class,"col");
return p;
}
}

2.4、测试类:

package com.example.demo;

import com.example.demo.dao.IPersonDao;
import com.example.demo.dto.Person;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class)
@SpringBootTest
public class MongoDbTest {
@Autowired
private IPersonDao ipersonDao; @Test
public void findPersonByName(){
Person p =ipersonDao.findPersonByName("Jkson");
System.out.println(">>>>Person ="+p);
}
}

测试,结果:

SpringBoot 集成mongodb(1)单数据源配置的更多相关文章

  1. springboot集成activiti6.0多数据源的配置

    最近公司开始开发springboot的项目,需要对工作流进行集成.目前activiti已经发布了7.0的版本,但是考虑到6.0版本还是比较新而且稳定的,决定还是选择activiti6.0的版本进行集成 ...

  2. springboot 集成mongodb

    环境依赖 在pom文件引入spring-boot-starter-data-mongodb依赖: <dependency> <groupId>org.springframewo ...

  3. springboot集成mongoDB 异常认证

    1.springboot连接mongoDB 出现异常认证 异常详情: com.mongodb.MongoSecurityException: Exception authenticating Mong ...

  4. 使用springboot + druid + mybatisplus完成多数据源配置

    一. 简介 1. 版本 springboot版本为2.0.3.RELEASE,mybatisplus版本为2.1.9, druid版本为1.1.9,swagger版本为2.7.0 2. 项目地址   ...

  5. SpringBoot集成MongoDB之导入导出和模板下载

    前言 自己很对自己在项目中集成MongoDb做的导入导出以及模板下载的方法总结如下,有不到之处敬请批评指正! 1.pom.xml依赖引入 <!-- excel导入导出 --> <de ...

  6. Springboot 2.x下多数据源配置

    本文同样适用于2.x版本下Mybatis的多数据源配置 项目中经常会遇到一个项目需要访问多个数据源的情况,多数情况下可以参考这个教程进行配置. 不过该教程适合springboot1.x版本,由于2.x ...

  7. SpringBoot 集成mongodb(2)多数据源配置

    github:https://github.com/xiaozhuanfeng/mongoProj 现MongoDB有两个数据库: pom.xml: <!-- mongodb 配置 --> ...

  8. springboot集成mongodb实现动态切换数据源

    主要实现原理,利用spring的aop 在切入点执行db操作之前 将数据库切换: 本例子采用aop在controller进行拦截 拦截到MongoTemplate.class 切换数据源后重新放回去 ...

  9. springboot集成mongoDB简易使用

    1.首先是添加Spring Data mongo的配置依赖 <dependency> <groupId>org.springframework.boot</groupId ...

随机推荐

  1. luogu P5338 [TJOI2019]甲苯先生的滚榜

    传送门 首先,排名系统,一看就知道是原题,可以上平衡树来维护 然后考虑一种比较朴素的想法,因为我们要知道排名在一个人前面的人数,也就是AC数比他多的人数+AC数一样并且罚时少的人数,所以考虑维护那两个 ...

  2. React全家桶入门

    http://blog.csdn.net/column/details/14545.html

  3. linux 更改 mysql 管理员口令

    #更改口令前,确保 mysql 服务已经正常启动 mysqladmin –u root passwd 新口令 #登陆 mysql ./mysql –u root –p Enter password:新 ...

  4. nginx之热部署,以及版本回滚

    热部署的概念:当从老版本替换为新版本的nginx的时候,如果不热部署的话,会需要取消nginx服务并重启服务才能替换成功,这样的话会使正在访问的用户在断开连接,所以为了不影响用户的体验,且需要版本升级 ...

  5. 系统环境: CentOS 64位+千万不要在生产环境中升级glibc!

    # cd /lib64# LD_PRELOAD=/lib64/libc-2.15.so ln -sf /lib64/libc-2.15.so libc.so.6 libc-2.15.so 这个文件名根 ...

  6. IsNumeric 函数

    VB IsNumeric 判断数字函数功能详解: IsNumeric 函数 函数功能:     返回 Boolean 值,指出表达式的运算结果是否为数. 函数语法:     IsNumeric (ex ...

  7. php内置函数分析之array_sum()

    PHP_FUNCTION(array_sum) { zval *input, *entry, entry_n; if (zend_parse_parameters(ZEND_NUM_ARGS(), & ...

  8. ivew 封装删除 对话框

    封装的组件 <template> <Modal footer-hide :closable="false" title="删除确认" v-mo ...

  9. git概述(二)

    分支管理 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了.如果等代码全部写完再一次 ...

  10. 关于让左右2个DIV高度相等

    哪个div Height值大,就将其值赋给Height值小的div,从而使2个div高度始终保持一 以下是代码: <!DOCTYPE html><html lang="en ...