<!--这里设置useGeneratedKeys、keyProperty这两个属性 keyProperty的值对应javaBean中的主键属性-->
<insert id="insert" useGeneratedKeys="true" keyProperty="id" parameterType="com.huike.app.report.model.TReportFinance">
insert into t_report_finance
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="title != null">
title,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="title != null">
#{title,jdbcType=VARCHAR},
</if>
</trim>
</insert>这里keyProperty的值是实体里面的字段。
在controller里面取出id
result = reportFinanceService.save(params);
log.info(params.get("id").toString());这里插入成功之后,result始终是1,日志里面会打印出插入数据的id.如果传入的参数是实体类,则用get方法得到id.

本文介绍如何使用MyBatis的insert标签配置来实现数据库记录插入后自动生成并获取主键ID的方法。通过设置useGeneratedKeys和keyProperty属性,可以在插入数据后直接从实体对象中获取到生成的ID。
7033

被折叠的 条评论
为什么被折叠?



