WebFlux系列(十二)MongoDB应用,新增、修改、查询、删除
#Java#Spring#SpringBoot#Mongo#reactor#webflux#数据库#新增#修改#查询#删除#
Spring Boot WebFlux Mongo数据库新增、删除、查询、修改
视频讲解 : https://www.bilibili.com/video/av84240038/

Employee.java
package com.example.spring.webfluxmongo; import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document; @Document
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Employee {
@Id
private String id;
private String name;
}
EmployeeController.java
package com.example.spring.webfluxmongo; import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono; @RestController
@AllArgsConstructor
@RequestMapping("/employee")
public class EmployeeController { private final EmployeeRep employeeRep; @DeleteMapping("/{id}")
public Mono delete(@PathVariable String id){
return employeeRep.deleteById(id);
} @GetMapping("/{id}")
public Mono findById(@PathVariable String id){
return employeeRep.findById(id);
} @PutMapping
public Mono update(@RequestBody Employee employee){
return employeeRep.save(employee);
} @PostMapping
public Mono<Employee> save(@RequestBody Employee employee){
return employeeRep.save(employee);
} @GetMapping
public Flux<Employee> findAll(){
return employeeRep.findAll();
}
}
EmployeeRep.java
package com.example.spring.webfluxmongo;
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
public interface EmployeeRep extends ReactiveCrudRepository<Employee,String> {
}
WebfluxMongoApplication.java
package com.example.spring.webfluxmongo; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class WebfluxMongoApplication { public static void main(String[] args) {
SpringApplication.run(WebfluxMongoApplication.class, args);
} }
application.properties
spring.data.mongodb.uri=mongodb://localhost:27017/test
公众号,坚持每天3分钟视频学习

WebFlux系列(十二)MongoDB应用,新增、修改、查询、删除的更多相关文章
- CRL快速开发框架系列教程十二(MongoDB支持)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- Alamofire源码解读系列(十二)之请求(Request)
本篇是Alamofire中的请求抽象层的讲解 前言 在Alamofire中,围绕着Request,设计了很多额外的特性,这也恰恰表明,Request是所有请求的基础部分和发起点.这无疑给我们一个Req ...
- Web 前端开发精华文章推荐(jQuery、HTML5、CSS3)【系列十二】
2012年12月12日,[<Web 前端开发人员和设计师必读文章>系列十二]和大家见面了.梦想天空博客关注 前端开发 技术,分享各种增强网站用户体验的 jQuery 插件,展示前沿的 HT ...
- SQL Server 2008空间数据应用系列十二:Bing Maps中呈现GeoRSS订阅的空间数据
原文:SQL Server 2008空间数据应用系列十二:Bing Maps中呈现GeoRSS订阅的空间数据 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Se ...
- 条目二十二《切勿修改set或multiset的键》
条目二十二<切勿修改set或multiset的键> 所有的标准关联容器一样,set和multiset按照一定的顺序来存放自己的元素,而这些容器的正确行为也是建立在其元素保持有序的基础之上的 ...
- struts2官方 中文教程 系列十二:控制标签
介绍 struts2有一些控制语句的标签,本教程中我们将讨论如何使用 if 和iterator 标签.更多的控制标签可以参见 tags reference. 到此我们新建一个struts2 web 项 ...
- 爬虫系列(十二) selenium的基本使用
一.selenium 简介 随着网络技术的发展,目前大部分网站都采用动态加载技术,常见的有 JavaScript 动态渲染和 Ajax 动态加载 对于爬取这些网站,一般有两种思路: 分析 Ajax 请 ...
- SQLite 入门教程(二)创建、修改、删除表 (转)
转于 SQLite 入门教程(二)创建.修改.删除表 一.数据库定义语言 DDL 在关系型数据库中,数据库中的表 Table.视图 View.索引 Index.关系 Relationship 和触发器 ...
- 学习ASP.NET Core Razor 编程系列十二——在页面中增加校验
学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...
随机推荐
- MySQL多实例安装(相同版本)
本文以MySQL5.7为例,介绍在同一台机器下如何安装多个MySQL实例. 环境:RHEL 6.5 + MySQL 5.7 1.单实例MySQL安装 2.多实例MySQL配置 3.多实例MySQL初始 ...
- 【LOJ2540】「PKUWC2018」随机算法
题意 题面 给一个 \(n\) 个点 \(m\) 条边的无向图.考虑如下求独立集的随机算法:随机一个排列并按顺序加点.如果当前点能加入独立集就加入,否则不加入.求该算法能求出最大独立集的概率. \(n ...
- 项目实战报异常Exception及决绝方案
1.报LifecycleException,再配置一下jdk即可,然后再手动添加maven 解决方法: 然后,手动添加jar包 2.maven 项目,右键maven build启动项目的时候,报下面 ...
- VM ubuntu18.04.01虚拟机没办法联网
sudo service network-manager stop sudo rm /var/lib/NetworkManager/NetworkManager.state sudo service ...
- iOS大V博客
王巍的博客:王巍目前在日本横滨任职于LINE.工作内容主要进行Unity3D开发,8小时之外经常进行iOS/Mac开发.他的陈列柜中已有多款应用,其中番茄工作法工具非常棒. http://onevca ...
- vue使用videojs控制后台m3u8数据请求
关于Video.js的使用方法就不再说了,有兴趣的请迁跃:https://videojs.com/ VideoJS中并没有stop之类控制后台数据请求的参数,只有暂停 video.pause()方法 ...
- Day8 - B - Non-Secret Cypher CodeForces - 190D
Berland starts to seize the initiative on the war with Flatland. To drive the enemy from their nativ ...
- Django(一)基础:安装环境、创建项目、视图、创建一个项目的应用(app)
一.安装环境 参考: https://docs.djangoproject.com/zh-hans https://www.runoob.com/django/django-install.html ...
- Spark学习入门(让人看了想吐的话题)
这是个老生常谈的话题,大家是不是看到这个文章标题就快吐了,本来想着手写一些有技术深度的东西,但是看到太多童鞋卡在入门的门槛上,所以还是打算总结一下入门经验.这种标题真的真的在哪里都可以看得到,度娘一搜 ...
- CSS - flex 垂直水平居中
display: flex; justify-content: center; /* 水平居中 */ align-items: center; /* 垂直居中 */