3.Mybatis: select、insert、update、delete 操作及配置解析

文章目录

本博客项目结构

在这里插入图片描述

UserMapper.xml中的namespace改为为UserMapper的路径 .
 
UserDaoTest测试类中,定义的UserDao改为UserMapper



1. 在UserMapper接口上定义增删改查

在这里插入图片描述



2. 在UserMapper.xml编写对应的配置文件SQL

在这里插入图片描述

其中:
resultType代表结果集的元素类型

parameterType代表传参数进来的元素类似,int可省略不写

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

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

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

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



3. 编写测试类CRUD

在这里插入图片描述

所有的增删改操作(查询不用)需要提交事务!即最后要有:(否则失败)

session.commit();
public class CURD {

	//根据id查询
    @Test
    public void tsetSelectUserById() {
        SqlSession session = MybatisUtils.getSqlSession();  //获取SqlSession连接
        UserMapper mapper = session.getMapper(UserMapper.class);
        User user = mapper.selectUserById(1);
        System.out.println(user);
        session.close();
    }

    //增删改需要提交事务,查不用
    @Test
    public  void  addUser(){
        SqlSession session = MybatisUtils.getSqlSession();  //获取SqlSession连接
        UserMapper mapper = session.getMapper(UserMapper.class);

        int flag = mapper.addUser(new User(4, "hhhhhh", "1234567"));

        if(flag>0) System.out.println("插入成功");

        //提交事务
        session.commit();

        session.close();
    }


    @Test
    public  void  updateUser(){
        SqlSession session = MybatisUtils.getSqlSession();  //获取SqlSession连接
        UserMapper mapper = session.getMapper(UserMapper.class);

        int flag = mapper.updateUser(new User(4, "xxxxx", "1234567"));

        if(flag>0) System.out.println("修改成功");

        //提交事务
        session.commit();

        session.close();
    }

    @Test
    public void deleterUser(){
        SqlSession session = MybatisUtils.getSqlSession();  //获取SqlSession连接
        UserMapper mapper = session.getMapper(UserMapper.class);
        int flag = mapper.deleteUser(4);

        if(flag>0) System.out.println("删除成功");

        //提交事务
        session.commit();

        session.close();
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐