解决Spring Boot项目中FeignClient版本冲突问题

在Spring Boot项目中同时调用使用不同Spring Cloud版本(1.x与2.x)的Feign服务时,常因客户端类定义包路径不同而引发启动冲突。本文介绍如何通过在不升级整体项目版本的前提下,重新定义FeignClient接口来隔离依赖,从而解决多版本共存导致的Bean注册异常问题。

解决Spring Boot项目中FeignClient版本冲突问题

Spring Boot 多实现类选择性注入实战:从基础注解到条件装配

在Spring Boot开发中,同一接口存在多个实现类时会导致Bean注入歧义。本文对比了@Primary、@Resource和@Qualifier等基础手动切换方案与基于@ConditionalOnProperty的条件自动装配方案。通过配置项动态控制实现类的实例化,实现了无需修改代码即可在不同环境间灵活切换业务逻辑,提升了系统的可维护性与运维友好度。

Spring Boot 内置 Undertow 容器 MP4 播放异常排查

本文记录了在 Spring Boot 中集成 Undertow 容器时,部分版本(2.2.x)静态资源文件(如 MP4)无法正常访问的问题。通过分析 Maven 依赖配置与 Undertow 参数设置,并对比 Tomcat 的性能差异,提供了包括降级版本、切换 Web 服务器容器或引入 Nginx 等在内的有效解决方案。

Spring Boot 内置 Undertow 容器 MP4 播放异常排查

Spring Boot自定义配置Boolean属性不生效的解决

在Spring Boot中,如果自定义配置的Boolean属性以'is'开头(如isStarted),可能导致无法从配置文件正确读取值。这是因为Spring依赖JavaBeans规范,将'isXXX'误判为布尔检查方法而非setter。解决方法是避免使用'is'作为字段名前缀,或显式定义标准setter/getter方法以确保绑定成功。

Spring Boot自定义配置Boolean属性不生效的解决

Spring Boot 引入静态资源返回400/404及解决思路

在使用Spring Boot开发时,HTML模板引用JS、CSS等静态资源可能因路径错误或默认扫描范围限制导致400或404错误。本文总结了三种主流解决方案:将文件置于根static目录、修改spring.mvc.static-path-pattern配置以支持子文件夹访问,以及利用Thymeleaf模板引擎的@{}语法自动解析相对路径,确保静态资源正常加载。

Spring Boot 引入静态资源返回400/404及解决思路

Java ZXing合成带文字的复杂二维码图片实现详解

本文介绍如何使用 Java ZXing 库生成二维码,并利用 Java 图形图像处理 API 为二维码添加上下或左右文字及背景。文章详述了创建画布、计算动态字体宽度以适配内容、绘制图文及背景合成的核心步骤,并重点解决了部署时中文字体缺失导致的乱码问题以及 Spring Boot 打包后资源文件读取失败的常见陷阱。

Java ZXing合成带文字的复杂二维码图片实现详解

Spring Boot 整合 Spring Security 详细配置指南

本文详细介绍了在 Spring Boot 中集成 Spring Security 的步骤,涵盖基础依赖引入、默认登录页展示及密码修改。重点讲解四种用户存储方式(内存、数据库、LDAP、自定义)的配置方法,以及通过 WebSecurityConfigurerAdapter 实现 URL 路径级别的权限拦截控制,帮助开发者快速构建安全的 Web 应用。

Spring Boot 整合 Spring Security 详细配置指南

Spring Boot 中解决 PUT 和 DELETE 请求失效的方法

HTML 表单仅支持 GET 和 POST 请求。在 Spring Boot 中若需通过表单发送 PUT 或 DELETE 请求,需利用 HiddenHttpMethodFilter 转换器。由于新版本自动配置默认禁用该功能,需在 application.properties 中开启 spring.mvc.hiddenmethod.filter.enabled=true,并在表单中添加 name="_method" 的隐藏域即可正常使用。

Spring Boot 中解决 PUT 和 DELETE 请求失效的方法

Spring Boot 实现文件分段上传与断点续传及分片下载示例

本文介绍如何在 Spring Boot 中基于 WebUploader 实现大文件的分段上传、断点续传及后端合并逻辑,并提供支持 HTTP Range 头部的分片下载代码实现。通过前端分片并发传输与后端临时文件聚合,解决大文件上传稳定性问题,同时利用 RandomAccessFile 优化大文件读取性能。

Spring Boot 多环境配置与文件优先级详解

本文介绍 Spring Boot 如何实现开发、测试和生产环境的独立配置。通过 YAML 分割符或独立 properties 文件管理不同环境参数,并结合命令行参数临时覆盖设置。同时解析 resources 内外各层级配置文件的加载顺序与优先级规则,确保应用在不同阶段能准确读取对应配置。

Spring Boot 多环境配置与文件优先级详解

Spring Boot中使用MyBatis-Plus与ThreadLocal自动填充公共字段

本文详解在Spring Boot项目中如何利用MyBatis-Plus的元数据对象处理器(MetaObjectHandler)实现createTime、updateTime等公共字段的自动填充。针对更新操作中需动态获取当前登录用户ID的需求,深入解析并实践通过ThreadLocal结合过滤器(Filter)进行线程间数据共享的方案,从而替代冗余的手动赋值代码,提升开发效率与代码整洁度。

Spring Boot中使用MyBatis-Plus与ThreadLocal自动填充公共字段