问题:
在跟着尚硅谷javaweb课程做qqzone项目时, 出现Can not set java.util.Date field com.atguigu.qqzone.pojo.Topic.topicDate to java.time.LocalDateTime这行错误。
解决方案:
我也是在查阅了一些资料后才找到答案 原答主:(44条消息) Can not set java.util.Date field *** to java.time.LocalDateTime解决办法_Risun98的博客-CSDN博客
首先得找到问题所在:应该属于是mysql8.0驱动的bug,具体原因未知。 因为正常情况下从表中查询到datatime类型的数据时,对应转化为的类型应该是Timestamp
然而我们查询到的类型却是LocalDateTime
所以可以有以下解决方案:
方案一:
在属性赋值前进行类型检查,手动将LocalDateTime转换为Date类型
if (propertyValue.getClass().toString().equals("class java.time.LocalDateTime")) { propertyValue = Timestamp.valueOf((LocalDateTime) propertyValue); }
方案二:
更换mysql版本