开发者社区> 问答> 正文

JFinal问题,有点郁闷?报错

@JFinal   打扰了   问一个问题


同样的代码 上一个没有错误   但是第二个就报错  说java.lang.Long can,t cast to java.Math.bigDicimal

展开
收起
爱吃鱼的程序员 2020-06-09 11:42:40 522 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    getNumber(" attr"). intValue();

    就可以了。

    对我最后就是这样获取的我很奇怪为什么getId()不行明明其它的实体类get是可以获取到逐渐的自己转换一下吧,jfinal对原始数据类型基本上没有做任何处理!偶然,我也遇到过空表插入第一条记录时返回的主键id不是预期的int而是BigDicimal!API内置的强转型就报错了。自己用ObjectidValue=record.get("id");intid=idValueinstanceOfjava.math.BigDicimal?((BigDicimal)idValue).intValue():(int)idValue;record.get("attr")是范型自动强制转型,这里因为jdbc返回的类型偶然不是你期望的类型,强制转型失败!是的但是我的实体类给你看下publicvoidsetId(java.lang.Longid){set("ID",id);}publicjava.lang.LonggetId(){returngetBigDecimal("ID").longValue();}我已经转换了还是会报错最后我用get("表字段名称")就可以了
    2020-06-09 11:42:56
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载