概述
Mybatis对于数据库更新和删除操作是非常简单的,会写更新、删除SQL就能完成,所用到Mybatis标签及属性也很少。在实际工作中在对数据进行更新和删除时,考虑更多的是事务,需结合业务确保数据的完整性。
下面简单实例Mybatis的UPDATE和DELETE使用。
本系列文章是基于Mybatis 3.4.6 版本,数据库使用的是Mysql 5.7。
UPDATE
Mybatis更新操作实例。
- mapper配置文件
UPDATE标签配置代码如下:
<!-- 配置id属性与Mapper接口的方法名对应,parameterType属性非必填 -->
<update id="update" parameterType="com.github.dalianghe.model.SysUser">
<!-- 执行的SQL语句 -->
UPDATE sys_user SET
user_account = #{userAccount},
user_password = #{userPassword}
WHERE id = #{id}
</update>
- mapper接口
接口代码如下:
// 返回值int为更新数据影响的行数
public int update(SysUser sysUser) throws Exception ;
- 测试用例
测试用户代码如下:
@Test
public void testUpdate(){
// 获得sqlSession
SqlSession sqlSession = getSqlSession();
try{
// 获取Mapper接口
SysUserMapper sysUserMapper = sqlSession.getMapper(SysUserMapper.class);
SysUser user = new SysUser();
user.setId(10L);
user.setUserAccount("admin");
user.setUserPassword("123123");
// 插入的条数
int count = sysUserMapper.update(user);
System.out.println("更新影响的条数:" + count);
// 提交事务,数据存入数据库
sqlSession.commit();
}catch (Exception e){
e.printStackTrace();
}finally {
sqlSession.close();
}
}
DELETE
Mybatis删除操作实例。
- mapper配置文件
代码如下:
<!-- 配置id属性与Mapper接口的方法名对应 -->
<delete id="deleteById">
DELETE FROM sys_user
WHERE id = #{id}
</delete>
- mapper接口
接口代码如下:
// 返回值int为删除影响的行数
public int deleteById(@Param("id") Long id) throws Exception;
- 测试用例
测试用户代码如下:
@Test
public void testDelete(){
// 获得sqlSession
SqlSession sqlSession = getSqlSession();
try{
// 获取Mapper接口
SysUserMapper sysUserMapper = sqlSession.getMapper(SysUserMapper.class);
// 此处实例根据ID进行删除
int count = sysUserMapper.deleteById(11L);
sqlSession.commit();
System.out.println("删除影响条数:" + count);
}catch (Exception e){
e.printStackTrace();
}finally {
sqlSession.close();
}
}
总结
本节学习了mybatis的基本的update/delete的用法,希望对大家有帮助。
最后创建了qq群方便大家交流,可扫描加入,同时也可加我qq:276420284,共同学习、共同进步,谢谢!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。