mysql insert 返回自增长主键问题

<insert id="insert" parameterType="SePushInfo" useGeneratedKeys="true" keyProperty="id">
        insert into t_se_push
        (nettype,aid,exceptdownflag,tags,approvalflag,remark,type,`status`,ctime,utime,cuser,uuser,enabledtime)
        values
        (#{nettype},#{aid},#{exceptdownflag},#{tags},#{approvalflag},#{remark},#{type},#{status},#{ctime},#{utime},#{cuser},#{uuser},#{ctime})
    </insert>




其中id为long类型




mapper:
public Long insert(SePushInfo sePushInfo);




错误写法:
Long i ;


i = sePushMapper.insert(sePushInfo);   
这种写法只会返回影响行数


正确写法:

sePushMapper.insert(sePushInfo);   

i = sePushInfo.getId();
return i;




这样才是返回的自增的id。
取回来的主键直接赋值给当做参数的实体的id ,useGeneratedKeys:使用jdbc的getGenereatedKeys方法获取主键并赋值到keyProperty设置的属性中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值