jfinal在表字段时间映射的异常??报错-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

jfinal在表字段时间映射的异常??报错

爱吃鱼的程序员 2020-06-20 16:33:11 28

今天同事在在Jfinal开发的时候问我说,getmodel(class);

如果使用时间格式是yyyy-mm-dd就会报错。

但是我在跟踪代码的时候使用TypeConverter转换方法的时候发现。

无论是yyyy-mm-dd 还是yyyy-mm-dd hh🇲🇲ss都没有问题。

这个是我就去看了一下报错信息。

原来在系统初始化的时候, ResultSet 类中的getMetaData方法将date类型转为了java.sql.Timestamp.

这个是jdk的版本问题?

还是在使用getmodel获取时间的时候必须用yyyy-mm-dd hh🇲🇲ss的方法?

@jfinal


Java
分享到
取消 提交回答
全部回答(1)
  • 爱吃鱼的程序员
    2020-06-20 16:33:30

    问题修复了, 针对Oracle解析特殊处理了:

    在TableBuilder类中的doBuild方法92行左右增加新的时间处理属性映射。

    新增加2个条件获取oracle.DATE的正确属性映射,字段类型是DATE并且是oracle数据库。

    这样前端的数据无论是yyyy-MM-dd或者是yyyy-MM-ddhh:mm:ss也可以正常的添加了。

    70左右增加一个实际字段类型获取。

    StringfactType=rsmd.getColumnTypeName(i);
    92行左右增加新的elseif条件

    elseif("DATE".equals(factType)&&config.dialect.isOracle()){table.setColumnType(colName,java.sql.Date.class);}
    如果你用的是oracle数据库,jar包用jfinal提供的ojdbc6.jar试试貌似不行。依然是date返回的数据类型是timestamp..postgresql在处理日期的时候也需要转换为java的sql类型
    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程