Mybatis——CRUD(增删改查)

1.namespace

namespace中的包名要和dao/mapper接口的包名一直

2.select

  • id:就是对应的namespace中的方法名

  • resultType:Sql语句执行的返回值

  • parameterType:传递参数的类型

1.编写接口

//查询全部用户
List<User> getUserList();

//根据id查询用户
User getUserById(int id);

2.编写对应的mapper中的sql语句

<select id="getUserList" resultType="com.yl.pojo.User">
  select * from mybatis.user
</select>
<select id="getUserById" parameterType="int" resultType="com.yl.pojo.User">
  select * from mybatis.user where id = #{id}
</select>

3.测试

@Test
public void test(){
   //获得SqlSession对象
   SqlSession sqlSession = MybatisUtils.getSqlSession();
   //方式一,执行
   UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
   List<User> userList = userMapper.getUserList();
   for (User user : userList) {
       System.out.println(user);
  }

   //关闭sqlSession
   sqlSession.close();
}

@Test
public void Test2(){
   SqlSession sqlSession = MybatisUtils.getSqlSession();
   UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
   User user = userMapper.getUserById(1);
   System.out.println(user);
   sqlSession.close();

}

3.insert

1.编写接口

//增加用户
int addUser(User user);

2.编写对应的mapper中的sql语句

<insert id="addUser" parameterType="com.yl.pojo.User">
  insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd})
</insert>

3.测试

@Test
public void Test3(){
   SqlSession sqlSession = MybatisUtils.getSqlSession();
   UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
   int result = userMapper.addUser(new User(4, "赵六", "123456"));
   System.out.println(result);
   //增删改必须要提交事务
   sqlSession.commit();
   sqlSession.close();
}

 

4.update

1.编写接口

//修改用户
int updateUser(User user);

2.编写对应的mapper中的sql语句

<update id="updateUser" parameterType="com.yl.pojo.User">
  update mybatis.user set name = #{name},pwd = #{pwd} where id = #{id};
</update>

3.测试

@Test
public void Test4(){
   SqlSession sqlSession = MybatisUtils.getSqlSession();
   UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
   int result = userMapper.updateUser(new User(4, "赵六", "12345678"));
   System.out.println(result);
   sqlSession.commit();
   sqlSession.close();
}

 

5.delete

1.编写接口

int deleteUser(int id);

2.编写对应的mapper中的sql语句

<delete id="deleteUser" parameterType="int">
  delete from mybatis.user where id = #{id}
</delete>

3.测试

@Test
public void Test5(){
   SqlSession sqlSession = MybatisUtils.getSqlSession();
   UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
   int result = userMapper.deleteUser(4);
   System.out.println(result);
   sqlSession.commit();
   sqlSession.close();
}

 

posted @ 2020-08-31 18:47  Fabulo  阅读(134)  评论(0)    收藏  举报