
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
摘要:作者分享了解决 Apache POI 导出 Excel 时遇到的 NoSuchMethodError: UnsynchronizedByteArrayOutputStream.builder() 问题的过程。该问题源于 commons-io 库的版本冲突,导致运行时加载了旧版本。文章提供了三种解决方案:推荐升级 commons-io 至 2.15.1、排除旧传递依赖(不推荐)和使用 POI
本文探讨了在Spring Boot 3.2和Java 21环境下使用虚拟线程(Virtual Threads)时遇到的配置问题。作者发现,虽然通过spring.threads.virtual.enabled=true配置了虚拟线程,但@Async异步方法仍使用传统线程池。分析表明该配置仅影响Web容器线程,不适用于异步任务。文章提供了五种解决方案:自定义AsyncTaskExecutor、配置Ta
摘要:本文针对Jackson无法序列化java.time.LocalDateTime的问题,提供了四种解决方案:1)字段级注解(推荐快速修复);2)Spring Boot全局配置(推荐统一风格);3)手动注册模块(非Spring环境);4)自定义序列化器(复杂格式)。文章详细说明了每种方案的使用场景和实现方式,并给出Spring Boot一键配置补丁。适用于不同开发环境下的日期时间序列化需求,帮助
本文讨论了Java泛型擦除导致的"Name clash"错误问题。作者在实现QuestionBankService接口时,因内部类与外部类同名导致方法签名冲突,编译器报错。文章分析了问题根源:泛型擦除后方法签名相同但参数类型不同。提出了三种解决方案:统一使用相同类型(推荐)、修改方法名(快速绕过)和使用泛型方法(进阶)。最后给出了最优方案的具体实现代码,并提供了相关参考资料。该
本文记录了一次因ThreadLocal未清理导致Metaspace内存泄漏的案例。作者发现预发布环境频繁Full GC后出现Metaspace OOM,经分析是线程池复用导致ThreadLocal中的ObjectMapper未被回收,进而引用的ClassLoader和动态代理类堆积。文章提供了三种解决方案:显式调用remove()方法、使用阿里TransmittableThreadLocal或改用
本文针对Excel导入数字数据时出现的NumberFormatException问题,提出了四种解决方案:1)导入时强制转整数;2)使用DecimalFormat格式化;3)解密后兼容性转换;4)全链路使用BigDecimal。文章分析了POI读取Excel数字为Double导致类型转换异常的根源,并推荐在导入阶段进行数据清洗或使用BigDecimal确保精度。最佳实践建议封装工具类统一处理数字格
处理数据库字符集问题时,务必谨慎并充分测试任何变更。在对数据库进行结构性调整之前,确保备份所有数据,并在非生产环境中进行测试。如果你不确定如何操作,或者觉得任务超出了你的技术范围,最好咨询经验丰富的数据库管理员。

摘要:本文针对Jackson无法序列化java.time.LocalDateTime的问题,提供了四种解决方案:1)字段级注解(推荐快速修复);2)Spring Boot全局配置(推荐统一风格);3)手动注册模块(非Spring环境);4)自定义序列化器(复杂格式)。文章详细说明了每种方案的使用场景和实现方式,并给出Spring Boot一键配置补丁。适用于不同开发环境下的日期时间序列化需求,帮助
处理数据库字符集问题时,务必谨慎并充分测试任何变更。在对数据库进行结构性调整之前,确保备份所有数据,并在非生产环境中进行测试。如果你不确定如何操作,或者觉得任务超出了你的技术范围,最好咨询经验丰富的数据库管理员。

摘要: 文章探讨了Jackson序列化Oracle CLOB对象时遇到的InvalidDefinitionException问题。问题根因是Jackson尝试序列化JDBC驱动内部对象MonitorLock。作者提出三种解决方案:1) 推荐方案是使用DTO隔离驱动对象,通过类型处理器将CLOB转为String;2) 临时方案是关闭FAIL_ON_EMPTY_BEANS特性;3) 自定义ClobSe







