mybatis实现增删改查

156 阅读1分钟

mybatis实现增删改查

此文章基于我的上一篇网站,没有配置好环境的可以参考上一篇文章 juejin.cn/post/723262…

创建数据库

image.png

1、select

1.编写接口

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

2.编写mapper对应的sql语句

    <!--根据id查询用户-->
    <select id="getUserById" parameterType="int" resultType="com.lhh.pojo.User">
        select * from user where id = #{id}
    </select>

3.编写测试类

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

2、insert

1.编写接口

//insert一个用户
int addUser(User user);

2.编写mapper对应的sql语句

    <!--insert一个用户-->
    <insert id="addUser" parameterType="com.lhh.pojo.User" >
        insert into user (id,name,pwd) value (#{id},#{name},#{pwd})
    </insert>

3.编写测试类

//insert一个用户
//增删改需要提交事务
@Test
public void addUser(){
    SqlSession sqlSession = MybatisUtils.getSqlSession();
    UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    int liu = mapper.addUser(new User(4, "liu", "123"));
    if (liu > 0){
        System.out.println("插入成功!!");
    }
    //提交事务
    sqlSession.commit();
    //关闭
    sqlSession.close();
}

3、update

1.编写接口

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

2.编写mapper对应的sql语句

    <!--修改用户-->
    <update id="updataUser" parameterType="com.lhh.pojo.User">
        update user set name =#{name },pwd = #{pwd} where id = #{id};
    </update>

3.编写测试类

@Test
public void updataUser(){
    SqlSession sqlSession = MybatisUtils.getSqlSession();
    UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    mapper.updataUser(new User(4,"en","123"));
​
    //提交事务
    sqlSession.commit();
    //关闭
    sqlSession.close();
}

4、delete

1.编写接口

//删除用户
int deleteUser(int id);

2.编写mapper对应的sql语句

    <!--删除用户-->
    <delete id="deleteUser" parameterType="int">
        delete from user  where id = #{id};
    </delete>

3.编写测试类

@Test
public void deleteUser(){
    SqlSession sqlSession = MybatisUtils.getSqlSession();
    UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    
    mapper.deleteUser(4);
​
    //提交事务
    sqlSession.commit();
    //关闭
    sqlSession.close();
    
}