MyBatis 插入MySQL数据库返回主键异常 java.lang.Integer cannot be cast to java.lang.Long
来源:互联网 发布:淘宝怎么符合分期付款 编辑:程序博客网 时间:2024/05/10 10:14
项目中需要插入记录并返回主键,但是在执行的时候却报了异常:
java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
DAO
Long saveExchangeCode(taExchangeCode exchangeCode);
XML
<insert id="saveExchangeCode" parameterType="cn.com.ticketapply.domain.taExchangeCode" useGeneratedKeys="true" keyProperty="exchangeId">INSERT INTO ta_exchange_code (order_id,exchange_code,use_status,perform_time,create_time,site_id,system_type) VALUES (#{orderId},#{exchangeCode},1,#{performTime},NOW(),#{siteId},#{systemType}) </insert>
service
Long rows = 0L;rows =exchangeCodeDao.saveExchangeCode(exchangeCodeInfo);
看似没有问题,但实际上存在两个问题。
1.DAO定义的时候应该用int,不是Long
刚开始我以为它会直接返回主键,所以把返回值定义成了int,但实际上,它返回的是影响行数。
但还有一个问题没有明白,即使返回的是int,为什么不能用long接收呢?希望看到这篇博客的人能指点一下。
2.service不能那么接返回值
在上面一条已经明确返回值是行数,那么问题来了,说好的主键该如何返回呢?
只能是修改接收主键的方式了
0 0
- MyBatis 插入MySQL数据库返回主键异常 java.lang.Integer cannot be cast to java.lang.Long
- java.lang.Long cannot be cast to java.lang.Integer
- java.lang.Long cannot be cast to java.lang.Integer
- java.lang.Long cannot be cast to java.lang.Integer!
- java.lang.Integer cannot be cast to java.lang.Long异常处理
- detachedCriteria: java.lang.integer cannot be cast to Long
- java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
- java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
- hibernate :java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
- hibernate :java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
- java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
- java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
- mybatis报错java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long
- java报错:java.lang.Integer cannot be cast to java.lang.Long
- 报错java.lang.Long cannot be cast to java.lang.Integer解析
- 报错:java.lang.Long cannot be cast to java.lang.Integer
- hibernate java.lang.Long cannot be cast to java.lang.Integer
- 报错java.lang.Long cannot be cast to java.lang.Integer解析
- 多文件组织的文件
- 对乡村地名进行模糊匹配
- 让用户信息安全起来
- MySQL创建用户与授权方法
- IOS开发中常用的一些宏定义
- MyBatis 插入MySQL数据库返回主键异常 java.lang.Integer cannot be cast to java.lang.Long
- java练习---计算平均分和总成绩
- Linux kernel-<armv7a-switch_to>
- 莫比乌斯反演定理证明
- maven中引入驱动报错Missing artifact本地引用jar解决办法
- ios开发系列 易疏忽点
- 集合的几种遍历,以(list为例)
- cocos2dx lua集成protobuf
- Eclipse/MyEclipse上配置Spring环境