错误:
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:
### Error updating database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String
### The error may exist in file [E:\demo\MicroCommunity\java110-db\target\classes\mapper\common\ChargingRcCardServcieDaoImplMapper.xml]
### The error may involve chargingRcCardServiceDaoImpl.updateChargingRcCard
### The error occurred while executing an update
### Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
at com.sun.proxy.$Proxy155.update(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.update(SqlSessionTemplate.java:294)
at com.java110.common.dao.impl.ChargingRcCardServiceDaoImpl.updateChargingRcCard(ChargingRcCardServiceDaoImpl.java:51)
at com.java110.common.smo.impl.ChargingRcCardServiceSMOImpl.updateChargingRcCard(ChargingRcCardServiceSMOImpl.java:54)
at com.java110.common.cmd.chargingRcCard.UpdateChargingRcCardCmd.doCmd(UpdateChargingRcCardCmd.java:108)
at com.java110.core.event.cmd.ServiceCmdEventPublishing.invokeListener(ServiceCmdEventPublishing.java:210)
at com.java110.core.event.cmd.ServiceCmdEventPublishing.multicastEvent(ServiceCmdEventPublishing.java:174)
at com.java110.core.event.cmd.ServiceCmdEventPublishing.multicastEvent(ServiceCmdEventPublishing.java:135)
at com.java110.core.event.cmd.ServiceCmdEventPublishing.multicastEvent(ServiceCmdEventPublishing.java:111)
at com.java110.service.smo.impl.CmdServiceSMOImpl.invokeBusinessSystem(CmdServiceSMOImpl.java:98)
at com.java110.service.smo.impl.CmdServiceSMOImpl.cmd(CmdServiceSMOImpl.java:78)
at com.java110.service.smo.impl.CmdServiceSMOImpl$$FastClassBySpringCGLIB$$c2c6ef6b.invoke(<generated>)
原因:
updateTime是Date类型,不能用updateTime != ''判断
<if test="updateTime != null and updateTime != ''">
t.update_time = #{updateTime}
</if>
解决:
<if test="updateTime != null">
t.update_time = #{updateTime}
</if>