- 传统基于Session的登录方案在分布式集群场景下存在会话共享困难的问题,JWT(JSON Web Token)作为无状态认证方案,无需在服务端存储会话信息,非常适合前后端分离项目。本文从零演示SpringBoot整合JJWT生成、解析、校验Token,封装工具类,实现登录签发令牌、拦截器校验请求身份,同时讲解JWT常见坑点:过期时间、签名泄露、Payload不要存放敏感信息,并给出完整可运行代码 传统基于Session的登录方案在分布式集群场景下存在会话共享困难的问题,JWT(JSON Web Token)作为无状态认证方案,无需在服务端存储会话信息,非常适合前后端分离项目。本文从零演示SpringBoot整合JJWT生成、解析、校验Token,封装工具类,实现登录签发令牌、拦截器校验请求身份,同时讲解JWT常见坑点:过期时间、签名泄露、Payload不要存放敏感信息,并给出完整可运行代码
- 事务传播行为决定了嵌套事务方法之间的边界关系。结合转账、批量处理等代码示例,详细讲解 REQUIRED、REQUIRES_NEW、NESTED、SUPPORTS、NOT_SUPPORTED、MANDATORY、NEVER 七种传播行为的语义,分析嵌套调用时事务的挂起、新建与回滚边界,以及常见的事务失效场景。 文章从技术背景和发展历程入手,帮助读者理解该技术的产生原因和演进脉络。通过对比不同版... 事务传播行为决定了嵌套事务方法之间的边界关系。结合转账、批量处理等代码示例,详细讲解 REQUIRED、REQUIRES_NEW、NESTED、SUPPORTS、NOT_SUPPORTED、MANDATORY、NEVER 七种传播行为的语义,分析嵌套调用时事务的挂起、新建与回滚边界,以及常见的事务失效场景。 文章从技术背景和发展历程入手,帮助读者理解该技术的产生原因和演进脉络。通过对比不同版...
- AOP 是 Spring 实现声明式事务、日志、权限等功能的基础。涵盖 JDK 动态代理与 CGLIB 字节码增强的区别,分析 Spring 如何根据目标类是否实现接口选择代理方式,剖析 AnnotationAwareAspectJAutoProxyCreator 创建代理的完整流程,以及切面、切点、通知的织入实现机制。 AOP 是 Spring 实现声明式事务、日志、权限等功能的基础。涵盖 JDK 动态代理与 CGLIB 字节码增强的区别,分析 Spring 如何根据目标类是否实现接口选择代理方式,剖析 AnnotationAwareAspectJAutoProxyCreator 创建代理的完整流程,以及切面、切点、通知的织入实现机制。
- 从“代码能跑”到“代码安全”:使用华为云 CodeArts Agent 审查 Spring Boot 接口越权风险关键词:华为云码道、CodeArts Agent、代码审查、Spring Boot、IDOR、BOLA、Java、Git说明:本文以模拟的订单查询接口为例演示审查流程,代码与测试均为教学示例,不代表已在真实生产项目中执行扫描或验证。 一、为什么代码审查不能只看功能是否正常?在 ... 从“代码能跑”到“代码安全”:使用华为云 CodeArts Agent 审查 Spring Boot 接口越权风险关键词:华为云码道、CodeArts Agent、代码审查、Spring Boot、IDOR、BOLA、Java、Git说明:本文以模拟的订单查询接口为例演示审查流程,代码与测试均为教学示例,不代表已在真实生产项目中执行扫描或验证。 一、为什么代码审查不能只看功能是否正常?在 ...
- 在订单创建、支付和异步任务等业务场景中,重复请求可能导致数据重复或业务执行异常。本文以 Spring Boot 和 PostgreSQL 为例,从并发竞态条件入手,介绍如何利用唯一约束、ON CONFLICT、数据库事务和幂等键实现接口幂等性,并进一步讨论 Redis 分布式锁、Transactional Outbox 和跨系统重复执行的问题。 在订单创建、支付和异步任务等业务场景中,重复请求可能导致数据重复或业务执行异常。本文以 Spring Boot 和 PostgreSQL 为例,从并发竞态条件入手,介绍如何利用唯一约束、ON CONFLICT、数据库事务和幂等键实现接口幂等性,并进一步讨论 Redis 分布式锁、Transactional Outbox 和跨系统重复执行的问题。
- 1. Spring 事务事件::: important 使用场景事务成功后发送通知事务成功后更新缓存事务回滚后的补偿操作:::需要开启异步配置,任何一个配置类或者启动类添加注解@EnableAsync::: tabs@tab 定义事件@Slf4j@Componentpublic class ReportGenerationEvent extends ApplicationEvent { ... 1. Spring 事务事件::: important 使用场景事务成功后发送通知事务成功后更新缓存事务回滚后的补偿操作:::需要开启异步配置,任何一个配置类或者启动类添加注解@EnableAsync::: tabs@tab 定义事件@Slf4j@Componentpublic class ReportGenerationEvent extends ApplicationEvent { ...
- Spring Boot提供了灵活的配置方式,允许开发者通过配置文件定制应用行为,而无需修改代码。本文将详细介绍Spring Boot的配置文件类型、格式、加载顺序以及最佳实践。 Spring Boot提供了灵活的配置方式,允许开发者通过配置文件定制应用行为,而无需修改代码。本文将详细介绍Spring Boot的配置文件类型、格式、加载顺序以及最佳实践。
- Spring Security 是 Java 生态的安全框架标准。涵盖 FilterChainProxy 过滤器链的认证流程:UsernamePasswordAuthenticationFilter 提取凭证、AuthenticationManager 校验、SecurityContextHolder 存储上下文,介绍 PasswordEncoder 的 BCrypt 加密,以及基于角色的 ... Spring Security 是 Java 生态的安全框架标准。涵盖 FilterChainProxy 过滤器链的认证流程:UsernamePasswordAuthenticationFilter 提取凭证、AuthenticationManager 校验、SecurityContextHolder 存储上下文,介绍 PasswordEncoder 的 BCrypt 加密,以及基于角色的 ...
- 医院随访管理系统及技术实现方案,基于前后端分离架构。后端采用Java + Spring Boot,前端使用Vue + Ant Design,数据库为MySQL。功能覆盖三级随访体系(一级/二级/三级)、随访路径动态制定、表单与问卷管理库、满意度调查等。通过模块化结构实现患者管理、随访计划、执行与统计分析等功能。 核心模块1. 患者档案可对接 HIS、体检等系统,导入患者基本信息、历次就诊信息... 医院随访管理系统及技术实现方案,基于前后端分离架构。后端采用Java + Spring Boot,前端使用Vue + Ant Design,数据库为MySQL。功能覆盖三级随访体系(一级/二级/三级)、随访路径动态制定、表单与问卷管理库、满意度调查等。通过模块化结构实现患者管理、随访计划、执行与统计分析等功能。 核心模块1. 患者档案可对接 HIS、体检等系统,导入患者基本信息、历次就诊信息...
- 📌 导读|建议先收藏,再阅读如果你正准备上 RabbitMQ,或者已经装了但心里没底,这篇就是你的“从 0 到 1 生产级落地手册”。不是 Hello World,不是只讲概念,而是从真实订单场景出发,把选型、部署、配置、Spring Boot 集成、可靠性、集群、监控一次讲透。每一步都有命令、配置、代码,能直接搬进项目。本文你会看到:为什么用 MQ:异步解耦、削峰填谷、可靠投递,一张图看... 📌 导读|建议先收藏,再阅读如果你正准备上 RabbitMQ,或者已经装了但心里没底,这篇就是你的“从 0 到 1 生产级落地手册”。不是 Hello World,不是只讲概念,而是从真实订单场景出发,把选型、部署、配置、Spring Boot 集成、可靠性、集群、监控一次讲透。每一步都有命令、配置、代码,能直接搬进项目。本文你会看到:为什么用 MQ:异步解耦、削峰填谷、可靠投递,一张图看...
- 升级到 Spring Boot 4 的第一个下午,最常见的报错长这样:应用起不来,日志里只有一句——某个配置属性绑定失败,原因是找不到对应的类。Java 代码一行没动,卡住的是 application.yml 里的一个键。这类问题在 Boot 4 的迁移里出现得非常密集,而且它们几乎都不是"代码问题"。Spring Boot 4.2.0-M2 在 9 月 25 日发布,官方说包含 141 项... 升级到 Spring Boot 4 的第一个下午,最常见的报错长这样:应用起不来,日志里只有一句——某个配置属性绑定失败,原因是找不到对应的类。Java 代码一行没动,卡住的是 application.yml 里的一个键。这类问题在 Boot 4 的迁移里出现得非常密集,而且它们几乎都不是"代码问题"。Spring Boot 4.2.0-M2 在 9 月 25 日发布,官方说包含 141 项...
- 9 月 21 日,Spring 官方博客发了一篇标题很克制的公告——《Releasing Spring for Modern Challenges》,作者 Michael Minella。内容一点都不克制:Spring 整个产品组合的发版方式被改掉了。原来是一个两周长的发版窗口,各项目错开日子发。现在压成一天:每个月第三个周一之后的那个周四,所有项目一起发。官方给这一天起了个名字,叫"Pat... 9 月 21 日,Spring 官方博客发了一篇标题很克制的公告——《Releasing Spring for Modern Challenges》,作者 Michael Minella。内容一点都不克制:Spring 整个产品组合的发版方式被改掉了。原来是一个两周长的发版窗口,各项目错开日子发。现在压成一天:每个月第三个周一之后的那个周四,所有项目一起发。官方给这一天起了个名字,叫"Pat...
- 现在让 AI 生成一个页面,已经容易到有点不真实。一句话:“给我一个用户管理页面,带搜索、分页和批量删除。”十几秒后,一个排版工整、配色现代、交互齐全的页面就出来了。截图发出去,看着比很多上线系统的界面还讲究。然后你把它放进项目里,发现——接不上。不是样式丑,不是代码乱,是它跟你后端那套东西对不上。 一、"一句话出页面"解决了什么,没解决什么先公平地说,这类工具解决的问题是真实的。它解决的是... 现在让 AI 生成一个页面,已经容易到有点不真实。一句话:“给我一个用户管理页面,带搜索、分页和批量删除。”十几秒后,一个排版工整、配色现代、交互齐全的页面就出来了。截图发出去,看着比很多上线系统的界面还讲究。然后你把它放进项目里,发现——接不上。不是样式丑,不是代码乱,是它跟你后端那套东西对不上。 一、"一句话出页面"解决了什么,没解决什么先公平地说,这类工具解决的问题是真实的。它解决的是...
- 用 Spring Boot 配合 Redis 的 SETNX 在接口入口占坑,拦掉网络重试和手抖双击造成的重复提交,并讲清边界情况。 用 Spring Boot 配合 Redis 的 SETNX 在接口入口占坑,拦掉网络重试和手抖双击造成的重复提交,并讲清边界情况。
- 有一件事,很多Java项目的依赖清单里还没体现出来。2026年6月30日,Spring生态一批版本同时走到了开源支持(OSS)的终点:Spring Boot 3.5、Spring Framework 6.2、Spring Security 6.5,以及同批的Spring Cloud。到今天,已经过去两个多月。这条消息不那么"炸",因为它不是故障、不是漏洞、也没有断供声明。它只是一条时间线走到... 有一件事,很多Java项目的依赖清单里还没体现出来。2026年6月30日,Spring生态一批版本同时走到了开源支持(OSS)的终点:Spring Boot 3.5、Spring Framework 6.2、Spring Security 6.5,以及同批的Spring Cloud。到今天,已经过去两个多月。这条消息不那么"炸",因为它不是故障、不是漏洞、也没有断供声明。它只是一条时间线走到...
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签