mybatis(2)——实现增删改的事务
发布日期:2021-05-07 02:55:19 浏览次数:19 分类:精选文章

本文共 2177 字,大约阅读时间需要 7 分钟。

1.增加

1.1在UserMapper接口中,添加增加的抽象方法

package com.lixv.dao;import com.lixv.entity.User;import java.util.List;public interface UserMapper {       //插入一个用户    int addUser(User user);}

1.2在UserMapper.xml中添加insert标签,里面写sql语句

insert into mybatis_test.user (id, name, pwd) values (#{id},#{name},#{pwd})

1.3测试代码

@Testpublic void testAddUser(){       SqlSession sqlSession = MybatisUtils.getSqlSession();    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);    int addUser = userMapper.addUser(new User(5, "Tom", "78936"));    System.out.println(addUser);    //提交事务    sqlSession.commit();    //关闭SqlSession    sqlSession.close();}

1.4讲解

  1. 新增用户的返回值可以为一个int值,为影响的行数
  2. 新增使用insert标签不是select标签
  3. 当parameterType为一个类时,#{}里面可以直接写这个类的成员变量名字
  4. 增删改的时候,需要执行sqlSession.commit()方法才可以改变表

2.删除

2.1在UserMapper接口中,添加删除的抽象方法

package com.lixv.dao;import com.lixv.entity.User;import java.util.List;public interface UserMapper {       //删除一个用户    int deleteUser(int id);}

2.2在UserMapper.xml中添加delete标签,里面写sql语句

delete from mybatis_test.user where id=#{id}

2.3测试代码

@Testpublic void testDeleteUser(){       SqlSession sqlSession = MybatisUtils.getSqlSession();    UserMapper mapper = sqlSession.getMapper(UserMapper.class);    int res = mapper.deleteUser(5);    System.out.println(res);    sqlSession.commit();    sqlSession.close();}

2.4讲解

3.更新

3.1在UserMapper接口中,添加更新的抽象方法

package com.lixv.dao;import com.lixv.entity.User;import java.util.List;public interface UserMapper {       //修改用户    int updateUser(User user);}

3.2在UserMapper.xml中添加update标签,里面写sql语句

update mybatis_test.user set name=#{name},pwd=#{pwd} where id=#{id}

3.3测试代码

@Testpublic void testUpdateUser(){       SqlSession sqlSession = MybatisUtils.getSqlSession();    UserMapper mapper = sqlSession.getMapper(UserMapper.class);    int res = mapper.updateUser(new User(5,"哈哈","789999"));    System.out.println(res);    sqlSession.commit();    sqlSession.close();}

3.4讲解

  1. 更改的SQL需要卸载update标签之中
  2. 更改的方法返回值也可以是一个int
  3. 更改的sql也需要运行commit()方法后才能执行成功
  4. 当parameterType为一个类时,#{}里面可以直接写这个类的成员变量名字
上一篇:mybatis(3)——使用map参数进行添加用户案列
下一篇:mybatis(1)——第一次简单的通过mybatis框架查询数据库获取用户信息

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2025年04月05日 00时26分53秒