当使用mybatis在Mysql数据库中进行insert操作时,需要返回插入的这条记录的主键id。有如下步骤:
前提:mysql中的主键生成策略为:自动递增。
(1)在mapper中:使用LAST_INSERT_ID()
<insert id="insertTiZhi" parameterClass="tiZhi" >
<![CDATA[
INSERT INTO T_BASE_TIZHI (
BIAOMING,
BINGRENID,
REMARK,
CREATERID,
CREATETIME,
UPDATERID,
UPDATETIME)
VALUES
(
#biaoming#,
#bingrenid#,
#remark#,
#createrid#,
#createtime#,
#updaterid#,
#updatetime#)
]]>
<selectKey keyProperty="id" resultClass="java.lang.String" >
<![CDATA[
SELECT LAST_INSERT_ID() AS id
]]>
</selectKey>
</insert>
(2)Dao层中:增加返回值。
public String save(TiZhi tiZhi) throws Exception{
return (String)this.getSqlMapClientTemplate().insert("TiZhi.insertTiZhi", tiZhi);
}