一、报错信息(不同类型转换)
2024-08-28 14:57:15.450 ERROR 8272 --- [io-8080-exec-12] c.w.common.exception.RRExceptionHandler : class java.lang.String cannot be cast to class java.lang.Integer (java.lang.String and java.lang.Integer are in module java.base of loader 'bootstrap')
这个错误信息java.lang.ClassCastException:class java.lang.String cannot be cast to class java.lang.Integer
表示在 Java 程序中尝试将一个 String
类型的对象强制转换为Integer类型的对象。
这可能是数据库某个字段是 Integer
类型,但实际上接收到了 String
类型的值。在将字符串转换为整数之前,先检查字符串是否有效(如是否为空、是否包含非数字字符等),并使用如 Integer.parseInt()或Integer.valueOf()方法进行转换。
二、报错信息(日期序列化与反序列化)
2024-08-28 15:17:58.079 ERROR 18548 --- [nio-8080-exec-4] c.w.common.exception.RRExceptionHandler : Error attempting to get column 'exam_time' from result set. Cause: java.sql.SQLFeatureNotSupportedException ; null; nested exception is java.sql.SQLFeatureNotSupportedException
错误原因: 日期无法正常序列化与反序列化
当前框架使用的字段类型:
1.实体类时间字段LocalDateTime类型
2.数据库时间字段datetime类型
解决方法:添加序列化处理的jar包
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-typehandlers-jsr310</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.9.2</version>
</dependency>