环境依赖

在pom文件引入spring-boot-starter-data-mongodb依赖:

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

数据源配置

如果mongodb端口是默认端口,并且没有设置密码,可不配置,sprinboot会开启默认的。

 
spring.data.mongodb.uri=mongodb://localhost:27017/springboot-db

mongodb设置了密码,这样配置:

spring.data.mongodb.uri=mongodb://name:pass@localhost:27017/dbname

定义一个简单的实体

mongodb

package cn.tao.domain;

import org.springframework.data.mongodb.core.mapping.Document;

@Document(collection="t_customer")
public class Customer { public String _id;
public String carNumber; public String get_id() {
return _id;
} public void set_id(String _id) {
this._id = _id;
} public String getCarNumber() {
return carNumber;
} public void setCarNumber(String carNumber) {
this.carNumber = carNumber;
}
}

据操作dao层

@Repository
public interface CustomerRepository extends MongoRepository<Customer, String> {

    //public Customer findByFirstName(String firstName);
//public List<Customer> findByLastName(String lastName); }

写一个接口,继承MongoRepository,这个接口有了几本的CURD的功能。如果你想自定义一些查询,比如根据firstName来查询,获取根据lastName来查询,只需要定义一个方法即可。注意firstName严格按照存入的mongodb的字段对应。在典型的java的应用程序,写这样一个接口的方法,需要自己实现,但是在springboot中,你只需要按照格式写一个接口名和对应的参数就可以了,因为springboot已经帮你实现了。

controller调用方式

package cn.tao.controller;

import cn.tao.domain.KdVehicle;
import cn.tao.repository.KdVehicleRepository;
//import cn.tao.service.MongoService;
import cn.tao.service.SynService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController
@RequestMapping("/mongo")
public class MongoController { @Autowired
private KdVehicleRepository kdVehicleRepository; @Autowired
private MongoTemplate mongoTemplate; /**
* 处理excel与数据库之间的差异数据
* */
@RequestMapping("/list")
public List<Customer> dobegin() throws Exception {
List<Customer> list = kdVehicleRepository.findAll();
//List<KdVehicle> list2 = mongoTemplate.findAll(Customer.class);//也可以
return list;
}
}

最新文章

  1. plain framework 1 1.0.4 更新 稳定版发布
  2. android视频播放器
  3. WebApi系列~开放的CORS,跨域资源访问对所有人开放
  4. [KOJ0574NOIP200406合并果子]
  5. 信号量 sem_undo设置
  6. IO中同步、异步与阻塞、非阻塞的区别(转)
  7. [又是BUG]常见的RuntimeException
  8. css和js引用图片的路径问题
  9. android使用BlueStacks作为模拟器
  10. git 分支的基本操作
  11. php将unicode编码转为utf-8方法
  12. adb wifi连接手机
  13. service structure flowchart [mobile to server via TCP/IP protocol]
  14. 磁盘修改AF
  15. 2018-icpc沈阳-G-思维
  16. matlab学习(3) 保存和导入工作区
  17. J2CACHE 两级缓存框架
  18. RabbitMQ用户角色及权限控制(转)
  19. NOI.AC NOIP模拟赛 第一场 补记
  20. POJ 3280 - Cheapest Palindrome - [区间DP]

热门文章

  1. 【转】Python之面向对象与类
  2. unigui 在单据中,某输入为必填项的 JS代码
  3. 利用微信企业号的告警功能,联动检测ICMP的shell脚本
  4. python用ftplib上传下载中文报错解决
  5. 题解-PKUWC2018 随机算法
  6. 题解-bzoj4221 JOI2012kangaroo
  7. 如何确定windows启动类型是bios还是uefi
  8. noi.ac 集合
  9. queue之#单向消息队列
  10. 微信小程序-两个input叠加,多次点击字体变粗或闪动