解决Mybatis中mapper.xml文件update,delete及insert返回值问题,需要在mapper.xml文件中使用select标签并指定resultType来解决。具体步骤如下:
解决Mybatis中mapper.xml文件update,delete及insert返回值问题,需要在mapper.xml文件中使用select标签并指定resultType来解决。具体步骤如下:
- 在mapper.xml中编写对应的statement,如下:
<!-- update语句的示例 -->
<update id="updateById" parameterType="com.example.model.User">
update user set name=#{name}, age=#{age}
where id=#{id}
</update>
<!-- delete语句的示例 -->
<delete id="deleteById" parameterType="int">
delete from user where id=#{id}
</delete>
<!-- insert语句的示例 -->
<insert id="insertUser" parameterType="com.example.model.User" useGeneratedKeys="true" keyProperty="id">
insert into user(name, age) values(#{name}, #{age})
</insert>
- 使用select标签来解决返回值问题,如下:
<!-- update语句的返回值 -->
<select id="updateById" resultType="int">
select changes() as result;
</select>
<!-- delete语句的返回值 -->
<select id="deleteById" resultType="int">
select changes() as result;
</select>
<!-- insert语句的返回值 -->
<select id="insertUser" resultType="int">
select last_insert_rowid() as result;
</select>
在上面的示例中,我们使用了select标签,并指定了resultType来解决update,delete及insert语句的返回值问题。同时,我们也通过函数changes()和last_insert_rowid()来分别获取update/delete影响的行数和insert的自增主键值。
另外,对于update,delete及insert语句的参数类型,我们可以根据具体情况来决定使用哪种类型。例如,对于update语句我们可以使用User类型作为参数,而对于delete语句我们可以使用int类型作为参数。
综上所述,解决Mybatis中mapper.xml文件update,delete及insert返回值问题的完整攻略包含以下几个步骤:
- 在mapper.xml中编写对应的statement
- 使用select标签来解决返回值问题
- 根据具体情况选择合适的参数类型
以上是我的回答,希望能够对您有所帮助。
本文标题为:解决Mybatis中mapper.xml文件update,delete及insert返回值问题
- SpringBoot整合Redis将对象写入redis的实现 2022-11-29
- 手写一个@Valid字段校验器的示例代码 2023-03-15
- RocketMQ ConsumeQueue与IndexFile实时更新机制源码解析 2023-07-14
- Tree组件实现支持50W数据方法剖析 2023-04-07
- springboot项目打包成jar包的图文教程 2022-11-29
- guava中Multimap、HashMultimap用法小结 2022-11-11
- 一文带你了解Java创建型设计模式之原型模式 2023-05-25
- 两个JSP页面父页面获取子页面内容的两种方法 2024-01-30
- Java项目部署的完整流程(超详细!) 2023-03-11
- MyBatis中不建议使用where 1=1原因详解 2023-01-24
