使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值。
刚接触mysql 跟mybatis ,不太了解,现记录如下
配置文件中如下:
<sql id="base_column">
id,userid,metadataid,downloadkey,createtime,disabletime,status,caceltime
</sql>
<!-- 插入数-->
<insert id="insertSharedownload" parameterType="shareDownLoad" useGeneratedKeys="true" keyProperty="id">
insert into sharedownload (<include refid="base_column"/>)
values (#{id},#{userid},#{metadataid},#{downloadkey},#{createtime},#{disabletime},#{status},#{caceltime})
</insert>
insert中指定了keyProperty="id",其中id代表插入的shareDownLoad对象的主键属性。
测试代码:
logger.info("增加分享记录前==========="+sdl.getId());
shareDownLoadDao.addShareDownLoad(sdl);
logger.info("增加分享记录后==========="+sdl.getId());
结果如下:
2014-10-21 13:00:49,338 INFO [********FileOperateServiceImpl] - <增加分享记录前===========null>
2014-10-21 13:00:49,391 INFO [********FileOperateServiceImpl] - <增加分享记录后===========6>