如何处理 ibatis 映射中的空日期
我的结果映射之一中有以下内容。
<result property="updateDate" column="update_date" javaType="java.util.Date"
jdbcType="DATE" nullValue="01/01/1900"/>
基本上,updateDate
是一个接受Date
的setter。但是,有时数据库中的 updateDate
将为 null
。在这些情况下,我希望默认日期为 01/01/1900
。
但是,当数据库中的 updateDate 为 null 时,上述映射会出现以下错误
Cause: java.lang.RuntimeException: Error setting property 'setUpdateDate'
I have the following in one of my result mappings.
<result property="updateDate" column="update_date" javaType="java.util.Date"
jdbcType="DATE" nullValue="01/01/1900"/>
basically updateDate
is a setter that accepts Date
. However, sometimes updateDate
will be null
in the database. In those cases I want to have a default date of 01/01/1900
.
However, the above mappings gives me the following error when updateDate
is null from DB
Cause: java.lang.RuntimeException: Error setting property 'setUpdateDate'
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
问题是您的 nullValue="01/01/1900" 试图将字符串传递给 updateDate 设置器吗?如果你把它去掉,我假设 iBatis 将使用“null”调用 setter,然后你可以在 Java 代码中的 setter 中应用默认值。
Is the problem that your nullValue="01/01/1900" is trying to pass a string into updateDate setter? If you took that out, I assume the setter would be called by iBatis with 'null' and then you could apply the default in your setter in the Java code.
您可以更改 updateDate 方法以采用 null 并在其中设置“01/01/1900”日期吗?
当 setter 不存在或拼写错误时,也会出现此消息,请确保不是这种情况。
Can you change your updateDate method to take a null and set the "01/01/1900" Date in there?
This message can also occur when the setter doesn't exist or is spelled incorrectly too, make sure that's not the case.