
SpringBoot 3.0 从入门到精通
文章平均质量分 94
顽石九变
人生没有彩排,每一天都是现场直播,所以每一刻都要活得精彩。
展开
-
【SpringBoot3】使用Easy-Trans做字典翻译
在项目中经常会有一些根据id从某个表中查name或者从数据字典表中根据code查name的场景。Easy-Trans 可以非常优雅的实现以上需求,可以有效减少字段冗余。原创 2025-03-08 18:26:36 · 1372 阅读 · 0 评论 -
【SpringBoot3】SpringBoot项目Web拦截器使用
在Spring Boot应用中,Web拦截器(Interceptor)是一种用于在请求处理的不同阶段执行自定义逻辑的机制。拦截器广泛应用于各种场景,以增强应用的功能性、安全性和可维护性。在Spring Boot项目中实现Wen拦截器主要有以下几种方式* 实现 `HandlerInterceptor` 接口* 使用过滤器(`Filter`)* 使用 `@Aspect` 注解实现AOP拦截这里主要介绍 `HandlerInterceptor` 接口 和 `Filter`原创 2025-03-06 18:29:52 · 1143 阅读 · 0 评论 -
【SpringBoot3】面向切面 AspectJ AOP 使用详解
AspectJ是一个面向切面的框架,它扩展了Java语言,并定义了AOP(面向切面编程)语法。AspectJ支持数据埋点、日志记录、性能统计、安全控制、事务处理、异常处理等多种横切关注点。通过AspectJ,开发者可以更加直观地定义和理解代码的行为,减少对业务逻辑的干扰。原创 2024-09-13 14:37:54 · 3052 阅读 · 1 评论 -
【SpringBoot3】双向实时通讯 websocket
在Spring Boot中使用WebSocket是一个常见的需求,因为WebSocket提供了一种在客户端和服务器之间进行全双工通信的方式。Spring Boot通过Spring的WebSocket支持,使得在应用程序中集成WebSocket变得非常简单。原创 2024-08-14 17:42:59 · 2046 阅读 · 0 评论 -
【SpringBoot3】使用os-maven-plugin为项目自动添加常用的变量
`os-maven-plugin` 是一个 Maven 扩展/插件,它根据 `${os.name}` 和 `${os.arch}` 生成各种有用的、与平台相关的项目属性,并将这些属性标准化。`${os.name}` 和 `${os.arch}` 在不同的 JVM 和操作系统版本之间往往存在细微的差异,或者它们有时包含对机器不友好的字符,如空格。此插件试图消除这种碎片化,以便您可以可靠地确定当前的操作系统和架构。原创 2024-07-08 18:17:48 · 1236 阅读 · 0 评论 -
【SpringBoot3】结合 gRpc 实现远程服务调用
gRPC(Google Remote Procedure Call,Google远程过程调用)是一个现代开源高性能远程过程调用(RPC)框架,可以在任何环境中运行。它由Google开发,旨在帮助开发人员更轻松地构建分布式应用,特别是当代码可能在不同地方运行的时候。gRPC是一个高性能、开源和通用的RPC框架,它基于HTTP/2设计,并支持多种编程语言和平台。随着其开源和广泛应用,gRPC已成为云原生计算基金会(CNCF)的一个孵化项目,被大量组织和企业采用。原创 2024-07-08 18:16:19 · 1839 阅读 · 0 评论 -
【SpringBoot3】结合 gRpc 通过 proto文件生成Java代码
Protobuf(Protocol Buffers)是由Google开发的一种灵活、高效、自动化的结构化数据序列化方法,类似于XML、JSON等,但更小、更快、更简单。它主要用于网络通信和数据存储等场景,广泛应用于各种编程语言中。原创 2024-07-05 19:45:01 · 2163 阅读 · 0 评论 -
【SpringBoot3】使用Jasypt加密数据库用户名、密码等敏感信息
使用Jasypt(Java Simplified Encryption)进行数据加密和解密主要涉及几个步骤,包括引入依赖、配置加密密码、加密敏感信息、将加密信息存储到配置文件中,以及应用程序启动时自动解密。原创 2024-07-03 20:13:07 · 4149 阅读 · 0 评论 -
【SpringBoot3】应用程序启动监听
应用启动监听在 Spring Boot 和其他框架中扮演着重要的角色。它们的主要作用是在应用启动或关闭时触发特定的操作或任务。原创 2024-03-04 23:55:35 · 2289 阅读 · 4 评论 -
【SpringBoot3】Spring Boot Event 自定义事件的发布与监听
Spring Boot自定义事件是Spring框架中事件处理机制的一种扩展,它允许开发者在Spring Boot应用程序中定义、发布和监听自己的事件。这些事件可以用于在应用程序的不同组件之间进行通信,实现解耦和异步处理。通过自定义事件,开发者可以更加灵活地处理业务逻辑,提高系统的可扩展性和可维护性。原创 2024-03-04 23:31:02 · 5718 阅读 · 0 评论 -
【SpringBoot3】统一参数校验
使用@Valid注解在Spring MVC和其他Java EE应用程序中带来了显著的好处。它简化了验证逻辑,使得代码更加清晰和易于阅读,通过将验证规则与业务逻辑分离,提高了代码的可维护性。此外,@Valid注解提供了丰富的验证功能,包括分组验证和自动处理异常,使得验证过程更加灵活和高效。由于其与Spring框架的紧密集成,开发者能够更容易地利用Spring提供的其他功能,如数据绑定和类型转换原创 2024-02-28 13:48:32 · 2828 阅读 · 0 评论 -
【SpringBoot3】统一数据响应,全局异常处理以及通用响应处理
在Spring Boot中设计一个优秀的异常处理机制,可以确保应用程序在遇到错误时提供清晰、一致的响应,同时提高系统的健壮性和可维护性。1)定义自定义异常类;2)创建全局异常处理器;3)定义统一的异常响应格式;4)异常分层;5)日志记录;7)提供友好的用户错误信息;8)处理全局异常原创 2024-02-27 18:42:38 · 4570 阅读 · 6 评论 -
【SpringBoot3】SpEL表达式详细使用说明
SpEL(Spring Expression Language)是Spring框架提供的一种功能强大的表达式语言,用于在运行时查询和操作对象。主要特点和用途包括:1. 简洁性:SpEL表达式使用简洁的语法,使得在Spring配置和代码中能够更简洁地表达复杂的逻辑。2. 动态性:SpEL表达式能够在运行时动态地解析和执行,从而提供了更大的灵活性。3. 强大的功能:SpEL表达式支持各种功能,如方法调用、字符串模板、集合操作、逻辑运算等,使得在Spring配置和代码中能够完成复杂的逻辑处理。原创 2024-02-26 17:29:26 · 6285 阅读 · 6 评论 -
【SpringBoot3】Spring Security 常用配置总结
1、记住我 rememberMe2、退出处理3、持久化登录令牌4、并发登录控制,后登录踢掉前面登录5、主动踢人下线6、允许跨域处理7、跨域攻击防护原创 2024-02-23 19:48:25 · 2770 阅读 · 5 评论 -
【SpringBoot3】Spring Security使用mybatis-plus存储用户角色权限,实现动态权限处理
一、使用mybatis-plus存储用户角色权限1)创建相关数据库表2)从数据库中读取用户、角色、权限数据3)登录成功返回token4)访问相关资源时,通过自定义的过滤器解析token,判断权限动态权限可以通过创建自定义类(如 `MyAuthorizationManager`)实现接口 `AuthorizationManager`,在实现类的 `check()` 方法中判断用户是否有请求资源的权限。原创 2024-02-23 14:31:36 · 1088 阅读 · 0 评论 -
【SpringBoot3】Spring Security 详细使用实例(简单使用、JWT模式)
Spring Security 使用起来非常简单,只要引入相关依赖包,然后增加注解`@EnableWebSecurity`就可以。同时提供了丰富的扩展点,可以让你自定义权限校验策略。常见的使用场景分两类:1. 有session模式,通常是前端不分离的项目,使用cookie + session 模式存储以及校验用户权限;2. 无session模式,通常是前后端分离项目,使用Jwt形式的Token校验权限原创 2024-02-23 09:34:07 · 5867 阅读 · 0 评论 -
【SpringBoot3】Spring Security 常用注解
Spring Security 6 的常用注解包括以下几种,通过这些注解可以更加方便的控制资源权限。- `@Secured` :方法执行前检查,直接判断有没有对应的角色- `@PreAuthorize`:方法执行前检查,根据SpEL表达式执行结果判断是否授权- `@PostAuthorize`:方法执行后检查,根据SpEL表达式执行结果判断是否授权原创 2024-02-19 18:36:11 · 2309 阅读 · 3 评论 -
【SpringBoot3】Spring Security 核心概念
Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC、DI(依赖注入)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。此外,Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架,致力于为Java应用程序提供身份验证和授权的能力。原创 2024-02-19 11:31:02 · 1408 阅读 · 0 评论 -
【SpringBoot3】Spring 请求处理流程,自定义返回类型处理(HttpMessageConverter)
Spring MVC 架构,以下是处理流程:1、客户端发送请求。2、DispatcherServlet 接收请求。3、HandlerMapping 进行映射,找到处理请求的 Controller。4、Controller 方法处理请求。5、数据绑定与验证(如果有的话)。6、返回数据或视图给 DispatcherServlet。7、ViewResolver 解析视图:如果返回的是视图名。8、视图渲染,生成最终的响应结果。9、DispatcherServlet 将最终的响应返回给客户端,请求原创 2024-02-01 12:22:03 · 1825 阅读 · 5 评论 -
【SpringBoot3】什么是SpringBoot Starter,创建自己的Starter
Spring Boot Starter 是 Spring Boot 中的一个重要概念,它简化了Spring应用程序的初始化和开发过程。整合依赖:Spring Boot Starter 将与特定功能相关的依赖整合在一起,使得开发者只需要在项目中引入相应的Starter,就可以快速地使用该功能。这大大简化了依赖管理和配置过程。自动配置:Spring Boot Starter 提供了自动配置功能,可以根据项目中的依赖和环境自动完成配置。这避免了手动配置的繁琐和易错性,使得开发者能够更加专注于业务逻辑的实现。原创 2024-01-29 15:56:33 · 1385 阅读 · 6 评论 -
【SpringBoot3】集成Knife4j、springdoc-openapi作为接口文档
Knife4j是一个基于 Swagger 实现的接口文档管理工具,它提供了一套简单易用的 UI 界面,用于展示和管理 Swagger 生成的 API 文档。与传统的 Swagger UI 相比,Knife4j 在 UI 设计和功能上进行了改进和增强,使得接口文档的浏览和管理更加方便和直观。Knife4j 提供了一个美观、直观的界面,用户可以通过该界面轻松地浏览和理解 API 文档,以及进行相关操作。原创 2024-01-29 15:54:18 · 6740 阅读 · 2 评论 -
【SpringBoot3】Spring Boot 3.0 集成 Mybatis Plus
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。原创 2024-01-22 18:41:32 · 15704 阅读 · 13 评论 -
【SpringBoot3】Spring Boot 3.0 集成 Redis 缓存
Redis缓存是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它主要用于作为数据库、缓存和消息中间件,以快速读写和丰富的数据结构支持而著称。在应用程序和数据库之间,Redis缓存作为一个中间层起着关键作用。通过将常用的数据存储在Redis内存中,可以快速读取,从而避免了从数据库进行复杂的查询操作,减轻了数据库服务器的压力,并提高了应用程序的性能和响应速度。原创 2024-01-22 11:47:06 · 8991 阅读 · 8 评论 -
【SpringBoot3】IDEA常用插件介绍Tabnine,GsonFormat,Maven Helper等
本文主要介绍一些比较实用的IDEA插件,帮助广大开发者提升开发效率,愉悦编码!原创 2024-01-19 10:28:54 · 4778 阅读 · 8 评论 -
【SpringBoot3】使用 devtools 实现代码热部署
Spring Boot DevTools是一组用于提高开发人员生产力,并加速Spring Boot应用程序开发的工具。它提供了一些功能,可以帮助开发人员更快速地构建应用程序,并减少常见的开发问题。自动重新加载:当应用程序中的代码发生变化时,DevTools会自动重新加载应用程序,而无需手动重新启动服务器。这可以节省大量时间,尤其是在开发过程中进行代码调试和迭代时。实时监控:DevTools提供了实时的应用程序监控功能,可以显示应用程序的运行状态、内存使用情况、线程状态等信息。原创 2024-01-16 15:35:01 · 1705 阅读 · 18 评论 -
【SpringBoot3】Spring Boot 3.0 介绍以及新特性
Spring Boot 3.0 是 Spring Boot 框架的一个重要版本,它在保持了 Spring Boot 的一贯优点的同时,也进行了一些重要的改进和更新。Spring Boot 3.0 对 Java 版本的要求进行了更新。这个版本要求使用 **Java 17** 作为最低版本,以利用最新的语言特性和性能改进。如果你正在使用的是 Java 8 或 Java 11,则需要先升级 JDK 版本,然后再开发 Spring Boot 3.0 应用程序。原创 2024-01-16 11:29:41 · 14483 阅读 · 8 评论