TERM

Java

像素风技术博客,记录开发、架构与运维实践。

2025-11-04 12:03 约 2 分钟

在 Spring Boot 中高效配置 MyBatis-Plus 代码生成器

本文是一份关于如何在 Spring Boot 项目中集成并使用 MyBatis-Plus 代码生成器 (AutoGenerator) 的详细指南。文章旨在帮助开发者通过简单的两步操作——添加必要的 Maven 依赖和编写一个配置完善的执行类——来自动生成包括 Entity, Mapper, Service, Controller 在内的全套后端代码。内容覆盖了数据源、全局设置、包路径规划以及核心生成策略(如 Lombok 支持、命名约定)的配置,从而极大提升开发效率,减少重复的模板代码编写工作。

2025-11-02 19:20 约 2 分钟

在 Java 和 SpringBoot 中使用 JWT

本文详细介绍了如何在纯 Java 环境和 Spring Boot 项目中集成和使用 JSON Web Token (JWT)。内容涵盖了添加依赖、生成 Token、验证并解析 Token 的基本操作,并重点讲解了如何在 Spring Boot 中通过编写 JWT 工具类和配置拦截器,实现对 API 接口的统一认证和授权管理,同时列举了常见的验证异常及其处理方式。

2025-11-02 17:53 约 2 分钟

使用 Swagger 注解构建优雅的 Spring Boot API 文档

本文是关于在 Spring Boot 项目中使用 Swagger 核心注解的实用指南,旨在帮助开发者自动生成清晰、规范的 API 文档。文章详细介绍了 @Api、@ApiOperation、@ApiImplicitParams 和 @ApiResponses 等关键注解的用途、常用属性和具体用法,并通过丰富的代码示例,展示了如何为 Controller、API 方法、请求参数和响应状态添加丰富的元数据描述。

2025-10-30 17:53 约 2 分钟

Spring MVC 中 @Async 与 HttpServletRequest共存引发的NullPointerException解析

本文深入解析了在 Spring MVC 中,将 @Async 注解与 HttpServletRequest 参数在同一方法中结合使用时,为何会导致 NullPointerException。文章剖析了问题根源在于 HttpServletRequest 的生命周期与请求线程的强绑定特性(通过 ThreadLocal 实现),而 @Async 会将方法执行切换到独立的后台线程,导致原始请求上下文丢失。最终,文章提出了明确的最佳实践:在调用异步方法前,应从 HttpServletRequest 中提取出所需的所有数据(如IP地址、请求头等),然后将这些具体的值或一个简单的DTO对象传递给异步方法,从而避免线程安全问题。