在建表的时候,设计字段的时候考虑到了精度,一般都NUMBER(19,0)和NUMBER(10,0)去对应JAVA里的LONG和INTEGER
但是最近在使用的时候,JFinal反向生成的BaseModel中都是BigDecimal,在使用model.getLong或者model.getInt的时候也都提示BigDecimal无法转换
以上情况无论我怎么调整NUMBER的精度,都无法解决
詹总求教= =
1:做一个 MyMetaBuilder extends MetaBuilder,强制指定自己需要的类型映射
2:做一个 MyOracleDialect extends OracleDialect,覆盖掉 Dialect 中的 buildeModelList() 与 buildRecordList(),控制一下 JDBC 生成的类型
建议优先使用第二种方式,应该很方便去控制,参考 ModelBuilder.build(...) 方法,在 for 循环里面添加上你想控制的 if 分支应该就可以搞定
记得搞定后回来分享一下哈