关于mybatis:Mybatis入门之CRUD

xml元素

  • namespace
    xml中的namespace与dao接口的包名统一
  • id
    xml中的id与dao接口的办法名统一
  • resultType
    sql语句执行的返回值
  • parameterType
    参数类型

select

  1. 编写接口
//查问全副用户
List<User> getUserList();
  1. 编写sql语句
<!--select查问语句-->
<select id="getUserList" resultType="com.sunfl.pojo.User">
    select * from mybatis.user
</select>
  1. 测试
@Test
public void test(){
    //取得SqlSession对象
    SqlSession sqlSession = MybatisUtils.getSqlSession();
    //形式一:执行SQL  举荐
    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
    List<User> userList = userMapper.getUserList();

    //形式二:
//        List<User> userList = sqlSession.selectList("com.sunfl.dao.UserDao.getUserList");

    for (User user : userList) {
        System.out.println(user);
    }

    //敞开sqlSession
    sqlSession.close();
}

insert

  1. 编写接口
//新增一个用户
int addUser(User user);
  1. 编写sql语句
<insert id="addUser" parameterType="com.sunfl.pojo.User">
    insert into mybatis.user (id, name, pwd) values (#{id},#{name},#{pwd});
</insert>
  1. 测试
@Test
public void addUser(){
    SqlSession sqlSession = MybatisUtils.getSqlSession();

    UserMapper mapper = sqlSession.getMapper(UserMapper.class);

    mapper.addUser(new User(4, "哈哈哈", "12323"));
    sqlSession.commit();
    sqlSession.close();
}

update

  1. 编写接口
//更新一个用户
int updateUser(User user);
  1. 编写sql语句
<update id="updateUser" parameterType="com.sunfl.pojo.User">
    update mybatis.user set name=#{name},pwd=#{pwd} where id=#{id};
</update>
  1. 测试
@Test
public void updateUser(){
    SqlSession sqlSession = MybatisUtils.getSqlSession();

    UserMapper mapper = sqlSession.getMapper(UserMapper.class);

    mapper.updateUser(new User(4,"嘿嘿","1111"));
    sqlSession.commit();
    sqlSession.close();
}

delete

  1. 编写接口
//删除一个用户
int deleteUser(int id);
  1. 编写sql语句
<delete id="deleteUser" parameterType="int">
    delete from mybatis.user where id = #{id};
</delete>
  1. 测试
@Test
public void deleteUser(){
    SqlSession sqlSession = MybatisUtils.getSqlSession();

    UserMapper mapper = sqlSession.getMapper(UserMapper.class);

    mapper.deleteUser(4);
    sqlSession.commit();
    sqlSession.close();
}

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理