Springboot WebFlux项目结合mongodb进行crud

这篇具有很好参考价值的文章主要介绍了Springboot WebFlux项目结合mongodb进行crud。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第一步:创建项目

Springboot WebFlux项目结合mongodb进行crud,spring boot,后端,java,mongodb,spring,flux

Springboot WebFlux项目结合mongodb进行crud,spring boot,后端,java,mongodb,spring,flux

第二步:给mongodb插入数据

Springboot WebFlux项目结合mongodb进行crud,spring boot,后端,java,mongodb,spring,flux

第三步:创建实体类

package org.cyl.test02.entity;// Task.java
import lombok.Data;

@Data
public class Task {
    private String id;
    private String description;
}

Springboot WebFlux项目结合mongodb进行crud,spring boot,后端,java,mongodb,spring,flux

第四步:创建Repository

引入依赖

 <!-- Spring Data MongoDB -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-mongodb-reactive</artifactId>
        </dependency>

创建TaskRepository接口

package org.cyl.test02.repository;// TaskRepository.java
import org.cyl.test02.entity.Task;
import org.springframework.data.repository.reactive.ReactiveCrudRepository;

public interface TaskRepository extends ReactiveCrudRepository<Task, String> {

}

第五步:创建Controller

package org.cyl.test02.controller;// TaskController.java
import org.cyl.test02.entity.Task;
import org.cyl.test02.repository.TaskRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;

@RestController
@RequestMapping("/tasks")
public class TaskController {

    @Autowired
    private TaskRepository taskRepository;

    @GetMapping
    public Flux<Task> getAllTasks() {
        return taskRepository.findAll();
    }

    @GetMapping("/{id}")
    public Mono<Task> getTaskById(@PathVariable String id) {
        return taskRepository.findById(id);
    }

    @PostMapping
    public Mono<Task> createTask(@RequestBody Task task) {
        return taskRepository.save(task);
    }

    @PutMapping("/{id}")
    public Mono<Task> updateTask(@PathVariable String id, @RequestBody Task task) {
        task.setId(id);
        return taskRepository.save(task);
    }

    @DeleteMapping("/{id}")
    public Mono<Void> deleteTask(@PathVariable String id) {
        return taskRepository.deleteById(id);
    }
}

第六步:配置yml文件

spring:
  data:
    mongodb:
      uri: mongodb://localhost:27017/student

运行结果

Springboot WebFlux项目结合mongodb进行crud,spring boot,后端,java,mongodb,spring,flux

Springboot WebFlux项目结合mongodb进行crud,spring boot,后端,java,mongodb,spring,flux文章来源地址https://www.toymoban.com/news/detail-800748.html

到了这里,关于Springboot WebFlux项目结合mongodb进行crud的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在SpringBoot-WebFlux中整合log4j2

      如果说在搭建项目时候第一事是创建项目,那么第二件事就一定是加入日志。日志在项目中有非常重要的作用,小到记录信息,大到排查问题,都要用到。    SpringBoot整合方式的POM在最后面第四点(最后面!最后面!最后面!),其他步骤一样 1、webflux增加pom依赖 2、

    2024年01月16日
    浏览(32)
  • 获取第三方接口的EventStream返回给前端,SpringBoot+Vue+WebFlux+SseEmitter

    后端: 其中曾踩了一些坑: 1.原本是bodyToFlux(String.class),结果没有返回也没有报错,排查了许久,最终改成bodyToFlux(byte[].class) 2.原本未使用Mono.fromCallable进行异步请求,结果其实是一次获取到完整的流再给前端,与长连接实时输出信息相悖。实际应该把SseEmitter返回给前端,异

    2024年03月19日
    浏览(39)
  • 对SpringBoot项目配置文件进行加密

    1.SpringBoot项目pom添加maven依赖  2.使用单元测试生成加密数据 设置配置文件(bootstrap.yml或者application.yml) password:加密的盐 algorithm:加密算法,这里使用 PBEWithMD5AndDES 运行单元测试文件 执行结果:    3.在SpringBoot项目中使用 配置mysql的jdbc,使用“ENC(密文)”配置密码,其他配置

    2024年02月09日
    浏览(28)
  • Express框架与Mongodb的结合使用

    如果你打开这篇文章,说明已经开始有做项目的打算了。 这里有express和mongodb的相关参考教程,遇到问题可以在里面找到答案: Express框架从入门到如土 一文入门Mongodb 这里说下为什么要express框架和mongodb结合。express框架不是指单纯的引入express,而是结合express-generator工具来

    2024年02月10日
    浏览(27)
  • SpringBoot项目使用JWT令牌进行权限校验

    要在Spring Boot中进行JWT校验,你需要遵循以下步骤: 在你的pom.xml文件中添加以下依赖: 创建一个名为JwtUtil的工具类,用于生成和解析JWT令牌。 在你的Controller中,使用JwtUtil工具类来验证请求头中的JWT令牌。 现在,当用户访问/secure端点时,系统会检查请求头中的JWT令牌是否

    2024年01月23日
    浏览(46)
  • MongoDB结合Robo 3T 1.4.3的简单操作

    MongoDB的简单操作结合Robo 3T 1.4.3工具进行查询。 /* 29 */  正则表达式 /* [0-9]* */ \\\"_id\\\" : ObjectId(\\\"5f3d05cdfd2aa9a8a7\\\"),   正则表达式  \\\"([^\\\"]*_id)\\\".*, 使用方法:查询结果去掉注释和不需要的字段后可直接修改为json放入到MySQL中查询。 MongoDB 查询数据的语法格式:db.collection.find(query,

    2024年02月09日
    浏览(24)
  • 对SpringBoot项目Jar包进行加密防止反编译

    最近项目要求部署到其他公司的服务器上,但是又不想将源码泄露出去,要求对正式环境的启动包进行安全性处理,防止客户直接通过反编译工具将代码反编译出来,本文介绍了如何对SpringBoot项目Jar包进行加密防止反编译,需要的朋友可以参考下 最近项目要求部署到其他公司的服务

    2024年02月01日
    浏览(27)
  • prisma 结合 mongodb 查询地理空间坐标,实现 “附近的人”功能

    前言:我们创建一个集合,添加测试数据,并执行 mongodb 的地理空间查询,返回需要的数据。 1、通过 schema.prisma , 创建 store 集合 2、通过 prisma/client ,插入 几条测试数据 location 的数据格式为 GeoJSON ,即地理位置信息的 JSON 表示法。 这里 type 指定类型为 点坐标 , coordinates

    2024年02月10日
    浏览(32)
  • SpringBoot 项目使用 Redis 对用户 IP 进行接口限流

    使用接口限流的主要目的在于提高系统的稳定性,防止接口被恶意打击(短时间内大量请求)。 比如要求某接口在1分钟内请求次数不超过1000次,那么应该如何设计代码呢? 下面讲两种思路,如果想看代码可直接翻到后面的代码部分。 1.1 固定时间段(旧思路) 1.1.1 思路描述

    2024年02月15日
    浏览(44)
  • SpringBoot 项目使用 Redis 对用户IP进行接口限流

    本文主要参考了该篇文章:https://www.zhihu.com/question/586213782/answer/3038040317?utm_id=0 使用接口限流的主要目的在于提高系统的稳定性,防止接口被恶意打击(短时间内大量请求)。 比如要求 某接口 在 1分钟 内请求次数不超过 1000次 ,那么应该如何设计代码呢? 下面讲两种思路,

    2024年02月16日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包