当前位置: 首页 > news >正文

错误java.lang.UnsupportedOperationException: null \ at java.sql.Date.toInstant(Date.java:304)

问题出在 java.sql.Date.toInstant() 方法上!这个方法在 java.sql.Date 类中是不支持的,会抛出 UnsupportedOperationException 异常。 <br/> 看起来 employee.getInbusdat() 返回的是一个 java.sql.Date 对象,而不是 java.util.Date 对象。当我们调用 toInstant() 方法时,就会抛出这个异常。

问题分析

从错误堆栈中可以看到:

java.lang.UnsupportedOperationException: null at java.sql.Date.toInstant(Date. java:304) at com.hlig.service.sm.impl. PushServiceImpl. lambda$getWorkAnniversaryMsg$18 (PushServiceImpl.java:770)

真正的问题 : java.sql.Date.toInstant() 方法是不支持的,会抛出 UnsupportedOperationException 异常。 employee.getInbusdat() 返回的是一个 java.sql.Date 对象,而不是 java.util.Date 对象。

解决方案

我修改了 DateUtils.calculateAnniversary 方法,使用 Calendar 类来计算周年数,避免使用 toInstant() 方法:

// 修复前:使用toInstant()方法(java.sql. Date不支持) LocalDate entry = entryDate.toInstant(). atZone(ZoneId.systemDefault()).toLocalDate (); LocalDate current = currentDate.toInstant ().atZone(ZoneId.systemDefault()). toLocalDate(); // 修复后:使用Calendar类 Calendar entryCal = Calendar.getInstance (); entryCal.setTime(entryDate); Calendar currentCal = Calendar.getInstance (); currentCal.setTime(currentDate);

修复效果

  1. 解决了异常 :不再抛出 UnsupportedOperationException 异常
  2. 保持了功能 :保持了原有的业务逻辑,包括2月29日的特殊处理
  3. 兼容性更好 :能够处理 java.sql.Date 和 java.util.Date 两种类型的日期对象

http://www.cnnetsun.cn/news/753687.html

相关文章:

  • 科研生产力革命:手把手打造大模型 Research Agent(文献调研 × 论文写作 × 思路激发)
  • opengl32.dll文件丢失找不到 免费下载方法分享
  • [STM32C0] 【STM32C092RC 测评】开箱以及环境配置
  • 深圳城区,竟然有座沉睡20多年的“垃圾山”
  • JDK21-虚拟线程(原理)
  • 硬核开源!AgentCPM重新定义端侧智能天花板,4B参数碾压30B性能,附一键部署教程
  • Navicat Premium MacOS:原生或通过 Rosetta 运行教程
  • 谷歌Gemini变身免费家教:接入全真模考,错题还能掰碎了讲
  • 曝光马斯克AGI秘密的他,被xAI开除了?
  • 导师严选2026 AI论文平台TOP9:继续教育写作全攻略
  • YOLOv13 RAB(Residual Attention Block)原理深度解析:多级残差 + 空间注意力的创新设计与应用
  • 测试教学实训平台
  • 2026必备!继续教育必用!8款一键生成论文工具深度测评
  • 电阻炉温度控制系统
  • 数字电子技术课程设计
  • 2025年企业级矩阵系统评测:5款主流工具的功能拆解与选型建议
  • STM32项目分享:工地环境监测系统
  • Vue.js 前端开发实战之 04-Vue 开发基础(3)
  • 【回眸】MDS 要点回顾总结
  • 存算分离2.0,阿里云EMR Serverless破解海量数据处理瓶颈
  • 一篇文章带你搞定企业级完整性能测试流程!
  • Redis 分布式锁:从原理到 Spring Boot 实战,避开 90% 开发者踩的坑!
  • C++课后习题训练记录Day74
  • C++课后习题训练记录Day75
  • 科研必备:六大学术引用平台+AI智能排版推荐
  • 猎头视角:不同阶段候选人的关注点差异与猎头价值
  • 导师推荐!10个AI论文网站测评,研究生科研写作必备
  • 学术文献引用工具排名:六款主流平台及智能规范建议
  • 每日面试题分享152:什么是循环依赖?
  • 60N04NF-ASEMI中低压MOS标杆60N04NF