例如表中有个字段“creation_date”,它的类型是“date”,实际存入时是带时分秒的,如下图所示:
但是通过Db.findFirst("select creation_date from xx") 获得的结果中时分秒已经丢失(返回结果集只有“年-月-日”),我现在的解决办法是通过转换成字符串形式即Db.findFirst("select to_char(creation_date,'yyyy-mm-dd hh24:mi:ss') creation_date from xx")的方式才不至于丢失,但是这种做法每次都要转换,有没有其他办法解决?!
补充:
单步调试到如下代码处:
得到该字段值的情况如下图所示:
项目:JFinal
注意:在查看数据时,通常是对象的 toString() 方法所表现的数据,与真实数据不同
如果类型确实不对,或者是 Date 类型,但真的丢失了小时、分、秒,自定义一个 MyOracleDialect 继承一下 OracleDaielct,拼接管一下里面的 buildRecordList 与 buildModelList, 自由控制一下这为类字段的获取,具体可以参考一下 ModelBuilder、RecordBuilder 中的读取代码
估计很可能只是视觉上的问题