为了账号安全,请及时绑定邮箱和手机立即绑定

java.lang.Long cannot be cast to java.lang.Integer

java.lang.Long cannot be cast to java.lang.Integer

慕运维8079593 2019-03-12 15:15:36
在底层dao自己添加id=1报错:java.lang.Long cannot be cast to java.lang.Integerid对应的数据库的id,是不是这里定义为long,数据库的id不能用int啊!不知道如何去排查这个错误!还发现:数据库都查询了DetachableCriteria(CriteriaImpl(com.pdcss.dbzx.survey.entity.SurveyProblems:this[][id=1])) Hibernate: select this_.id as id1_10_0_, this_.analysis as analysis2_10_0_, this_.answer as answer3_10_0_,  this_.bank_id as bank_id4_10_0_, this_.createtime as createti5_10_0_, this_.img as img6_10_0_,  this_.problem_name as problem_7_10_0_, this_.type as type8_10_0_, this_.typeStr as typeStr9_10_0_ from survey_problems  this_ where this_.id=?但是为什么会报错?已经解决,数据库改成bigint,跟long对应,就ok了!
查看完整描述

3 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

你使用的是什么数据库?
你把参数(long id)换成(Integer id)。
报这个错的原因的类型转换失败。
long类型无法转换成Integer类型。

查看完整回答
反对 回复 2019-04-25
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

可以将id在方法里面转为Integer后在放入dc里面,

String str = id.toString();
Integer id1 = Integer.valueOf(str);
或者Integer id1 = new Integer(str);


查看完整回答
反对 回复 2019-04-25
  • 3 回答
  • 0 关注
  • 5091 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信