mybatis插入值的时候返回对象的主键值
mapping文件:
<insert id="insert" parameterType="com.vimtech.bms.business.riskprojectapproval.domain.RiskProjectApproval" > insert into WF_RISK_PROJECT_APPROVAL (RISKTGID, PROJID, CREATEDATE, UPDATEDATE, STATUS, CONCLUSION, CREATOR, RISKTYPE, APPLYTYPE, ISCOMPENSATORY) values (#{risktgid,jdbcType=NUMERIC}, #{projid,jdbcType=NUMERIC}, #{createdate,jdbcType=TIMESTAMP}, #{updatedate,jdbcType=TIMESTAMP}, #{status,jdbcType=INTEGER}, #{conclusion,jdbcType=VARCHAR}, #{creator,jdbcType=VARCHAR}, #{risktype,jdbcType=INTEGER}, #{applytype,jdbcType=INTEGER}, #{iscompensatory,jdbcType=INTEGER}) <selectKey resultType="long" keyProperty="risktgid"> SELECT @@IDENTITY AS RISKTGID </selectKey> </insert> <insert id="insertSelective" parameterType="com.vimtech.bms.business.riskprojectapproval.domain.RiskProjectApproval" > insert into WF_RISK_PROJECT_APPROVAL <trim prefix="(" suffix=")" suffixOverrides="," > <if test="risktgid != null" > RISKTGID, </if> <if test="projid != null" > PROJID, </if> <if test="createdate != null" > CREATEDATE, </if> <if test="updatedate != null" > UPDATEDATE, </if> <if test="status != null" > STATUS, </if> <if test="conclusion != null" > CONCLUSION, </if> <if test="creator != null" > CREATOR, </if> <if test="risktype != null" > RISKTYPE, </if> <if test="applytype != null" > APPLYTYPE, </if> <if test="iscompensatory != null" > ISCOMPENSATORY, </if> </trim> <trim prefix="values (" suffix=")" suffixOverrides="," > <if test="risktgid != null" > #{risktgid,jdbcType=NUMERIC}, </if> <if test="projid != null" > #{projid,jdbcType=NUMERIC}, </if> <if test="createdate != null" > #{createdate,jdbcType=TIMESTAMP}, </if> <if test="updatedate != null" > #{updatedate,jdbcType=TIMESTAMP}, </if> <if test="status != null" > #{status,jdbcType=INTEGER}, </if> <if test="conclusion != null" > #{conclusion,jdbcType=VARCHAR}, </if> <if test="creator != null" > #{creator,jdbcType=VARCHAR}, </if> <if test="risktype != null" > #{risktype,jdbcType=INTEGER}, </if> <if test="applytype != null" > #{applytype,jdbcType=INTEGER}, </if> <if test="iscompensatory != null" > #{iscompensatory,jdbcType=INTEGER}, </if> </trim> <selectKey resultType="long" keyProperty="risktgid"> SELECT @@IDENTITY AS RISKTGID </selectKey> </insert>
如上中的selectKey中的写法即可,然后就可以在action中使用了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)