Springboot集成MongoDB实现CRUD
1、添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
2、Java代码
a、控制层
package com.mao2080.mongodb; import com.mao2080.beans.User;
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.data.mongodb.core.query.Update;
import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse;
import java.util.List; @RestController
@RequestMapping("/mongodbController")
public class MongodbController { @Autowired
private MongoTemplate mongoTemplate; /**表名*/
private static final String collectionName = "user"; /**
* 描述:新增
* @author maochengyuan
* @created 2018/9/1 20:17
* @param user
* @return ResultObject
*/
@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ResponseBody
public ResultObject insert(@ModelAttribute User user) throws Exception {
this.mongoTemplate.insert(user);
return new ResultObject(HttpServletResponse.SC_OK);
} /**
* 描述:删除
* @author maochengyuan
* @created 2018/9/1 20:17
* @param userId
* @return ResultObject
*/
@RequestMapping("/delete")
@ResponseBody
public ResultObject delete(@RequestParam("userId") String userId) throws Exception {
Query query = Query.query(Criteria.where("userId").is(userId));
this.mongoTemplate.remove(query, collectionName);
return new ResultObject(HttpServletResponse.SC_OK);
} /**
* 描述:修改
* @author maochengyuan
* @created 2018/9/1 20:17
* @param user
* @return ResultObject
*/
@RequestMapping(value = "/update", method = RequestMethod.POST)
@ResponseBody
public ResultObject update(@ModelAttribute User user) throws Exception {
Query query = Query.query(Criteria.where("userId").is(user.getUserId()));
Update update = new Update();
update.set("age", user.getAge());
update.set("name", user.getName());
update.set("email", user.getEmail());
this.mongoTemplate.updateFirst(query, update, collectionName);
return new ResultObject(HttpServletResponse.SC_OK);
} /**
* 描述:查询
* @author maochengyuan
* @created 2018/9/1 20:17
* @param
* @return ResultObject
*/
@RequestMapping("/query")
@ResponseBody
public ResultObject query() throws Exception {
Query query = Query.query(Criteria.where("dataStatus").is(1));
List<User> users = this.mongoTemplate.find(query, User.class);
return new ResultObject(HttpServletResponse.SC_OK, users);
} }
b、实体类
package com.mao2080.beans; import org.springframework.data.mongodb.core.mapping.Document; import java.util.Date; @Document(collection="user")
public class User { private String userId; private String name; private String uclass; private String email; private Date birthday; private int age; private int dataStatus; public User() {
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getUserId() {
return userId;
} public void setUserId(String userId) {
this.userId = userId;
} public String getUclass() {
return uclass;
} public void setUclass(String uclass) {
this.uclass = uclass;
} public String getEmail() {
return email;
} public void setEmail(String email) {
this.email = email;
} public Date getBirthday() {
return birthday;
} public void setBirthday(Date birthday) {
this.birthday = birthday;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public int getDataStatus() {
return dataStatus;
} public void setDataStatus(int dataStatus) {
this.dataStatus = dataStatus;
}
}
c、配置文件(application.properties)
spring.data.mongodb.host=127.0.0.1
spring.data.mongodb.port=27000
spring.data.mongodb.database=mao2080
3、操作过程
注意使用postman来模拟POST请求。
1、新增URL:http://localhost:8080/mongodbController/insert?userId=015&name=Back&uclass=B&email=b12@sina.com&age=11&dataStatus=1
2、删除URL:http://localhost:8080/mongodbController/delete?userId=015
3、修改URL:http://localhost:8080/mongodbController/update?userId=014&name=Back&uclass=B&email=b12@sina.com&age=18&dataStatus=2
4、查询URL:http://localhost:8080/mongodbController/query
4、代码下载
5、参考网站
Springboot集成MongoDB实现CRUD的更多相关文章
- springboot连接mongodb进行CRUD
springboot连接mongodb进行CRUD的过程: 在执行以下操作前已安装了mongodb并创建了用户和数据库,使用Robo 3T可成功连接. 1.创建springboot项目,加入以下mav ...
- springboot集成mongoDB 异常认证
1.springboot连接mongoDB 出现异常认证 异常详情: com.mongodb.MongoSecurityException: Exception authenticating Mong ...
- 实例讲解Springboot整合MongoDB进行CRUD操作的两种方式
1 简介 Springboot是最简单的使用Spring的方式,而MongoDB是最流行的NoSQL数据库.两者在分布式.微服务架构中使用率极高,本文将用实例介绍如何在Springboot中整合Mon ...
- SpringBoot集成MongoDB之导入导出和模板下载
前言 自己很对自己在项目中集成MongoDb做的导入导出以及模板下载的方法总结如下,有不到之处敬请批评指正! 1.pom.xml依赖引入 <!-- excel导入导出 --> <de ...
- SpringBoot集成MongoDB
前言 之前写了各种nosql数据库的比较,以及相关理论,现在我在本地以springboot+MongoDB框架,探究了具体的运行流程,下面总结一下,分享给大家. 运行前准备 安装并启动MongoDB应 ...
- springboot 集成mongodb
环境依赖 在pom文件引入spring-boot-starter-data-mongodb依赖: <dependency> <groupId>org.springframewo ...
- springboot集成mongoDB简易使用
1.首先是添加Spring Data mongo的配置依赖 <dependency> <groupId>org.springframework.boot</groupId ...
- SpringBoot 集成mongodb(1)单数据源配置
新项目要用到mongodb,于是在个人电脑上的虚拟环境linux上安装了下mongodb,练习熟悉下. 1.虚拟机上启动mongodb. 首先查看虚拟机ip地址,忘了哈~~ 命令行>ifconf ...
- springboot集成mongoDB需要认证
报错: Mon Nov 25 01:09:48 CST 2019 There was an unexpected error (type=Internal Server Error, status=5 ...
随机推荐
- O059、Backup Volume 操作
参考https://www.cnblogs.com/CloudMan6/p/5662236.html BackUp是将Volume备份到别的地方(备份设备),将来可以通过restore操作恢复. ...
- O037、Rebuild Instance 操作详解
参考https://www.cnblogs.com/CloudMan6/p/5516852.html 上一节我们学习了 snapshot ,snapshot 一个重要的作用就是对 Instance ...
- java 计算中位数方法
最近工作需要 要求把python的代码写成java版本,python中有一个np.median()求中位数的方法,java决定手写一个 先说说什么是中位数: 中位数就是中间的那个数, 如果一个集合是奇 ...
- Markdown之基础语法
Markdown是一种纯文本格式的标记语言.通过简单的标记语法,它可以使普通文本内容具有一定的格式 优点: 1.因为是纯文本,所以只要支持Markdown的地方都能获得一样的编辑效果,可以让作者摆脱排 ...
- 用jquery写出图片自动轮播效果
相关代码如下,只要把代码粘贴进编辑器,修改图片路径,即可看到效果. 1.html部分 <body> <ul class="banner"> < ...
- docker一键搭建Nginx+PHP环境(含自动部署命令)
文章的主要部分是一步一步的教程,文章的最后是我整理好的一键安装命令,自动下载并安装docker,构建镜像,启动容器集群(压缩包内注释覆盖范围达到80%) 大家可以看完教程亲自尝试下,也可以直接执行一键 ...
- fastadmin 金额 字段类型及html验证
金额 字段类型 整数 小数 decimal 10 2 float 10 2 html验证 <div class="form-group&q ...
- Delphi 媒体播放器控件
樊伟胜
- vmware centos 桥接和NAT的IP配置
先初始化VM, 桥接模式: [root@out network-scripts]# cat ifcfg-ens33 TYPE=EthernetBOOTPROTO=staticDEFROUTE=yesP ...
- Ion-select and ion-option list styling 自定义样式
https://forum.ionicframework.com/t/ion-select-and-ion-option-list-styling/117028