上星期在开发过程中,我在做一个查询功能时,发现对象的DataTime类型成员老是被初始化为0001-00-00 00:00:00。接着我发现DataTime类型竟然是值类型(Struct类型),我是说为何不能将NULL类型赋值给它呢,原来如此啊。
那如何才能将这个对象的DataTime类型的成员置为空值再传给ISBATILNET呢?(这里说明一下,我在ISBATILNET的相关XML文件中使用了
<isNotEmpty prepend="Between" property="BeginDate">
to_date('$BeginDate$', 'yyyy-mm-dd')
</isNotEmpty>
)因此,我必须将它置为空,否则会使得SQL语句不正确。
首先去百度中文搜索,叮咚,哈哈,得到一个 IBatisNet中将DateTime字段保存为null 的解决方法:自己定义一个类并实现ITypeHandlerCallback接口,
然后在相关XML文件中加上<typeAlias alias="DateTimeHandler" type="test.DateTimeHandler,test" />,这时你就可以将DateTime字段保存为null。不过我自己最后就是把那个实体类的DateTime类型的成员换成了String类型,然后就OK了呵呵。
相关文章:
-
2021-08-20
-
2022-12-23
-
2021-05-19
-
2022-12-23
-
2022-12-23
-
2022-12-23
-
2021-06-30
-
2022-12-23