Mybatis之增删查改

2023-12-26 16:52:49

目录

一、引言

二、Mybatis——查询

示例:查询用户

三、Mybatis——添加

示例:添加用户

四、Mybatis——删除

示例:删除用户

五、Mybatis——修改

示例:修改用户


一、引言

接着上次的mybatis,我们在了解完mybatis之后,肯定要知道怎么使用,本文就来详细讲解Mybatis的增删改查事务,还不了解怎么配置mybatis的朋友可以去这篇文章了解一下什么是MyBatis

什么是MyBatis-CSDN博客



二、Mybatis——查询

示例:查询用户

xml文件配置:

<!--查询-->
    <select id="findUserByName" parameterType="String" resultType="com.xinhua.domain.Student">
        select * from student where studentName = #{studentName}
    </select>

测试代码:

@Test
    public void Test03(){
        SqlSession sqlSession = ssf.openSession();
        List<Student> students = sqlSession.selectList("test.findUserByName","zhangsan");
            for (Student student :students){
            System.out.println(student.getId()+","+student.getStudentName()+","+student.getGender()+","+student.getAddress()+","+student.getEmail());
        }
    }

parameterType和resultType解释

parameterType:指定输入参数类型,mybatis通过ognl从输入对象中获取参数值拼接在sql中。

resultType:指定输出结果类型,mybatis将sql查询结果的一行记录数据映射为resultType指定类型的对象。

parameterType:定义输入到sql中的映射类型,${value}表示使用参数将${value}替换,做字符串的拼接。

注意:如果是取简单数量类型的参数,括号中的值必须为value

resultType:定义结果映射类型。

三、Mybatis——添加

示例:添加用户

xml文件配置:

<insert id="addStudent" parameterType="com.xinhua.domain.Student">
        <selectKey keyProperty="id" order="BEFORE" resultType="int">
            select last_insert_id()
        </selectKey>
        INSERT into student(studentName,gender,address,email,remark) VALUES (#{studentName},#{gender},#{address},#{email},#{remark})
    </insert>

测试代码

@Test
    public void Test05(){
        SqlSession sqlSession = ssf.openSession();
        //添加用户信息
        Student student = new Student("往二","男","成都","4567688@qq.com","rtyu");
        int insert = sqlSession.insert("test.addStudent", student);
        // 提交事务
        sqlSession.commit();
        System.out.println(insert);
    }

四、Mybatis——删除

示例:删除用户

xml文件配置

<!--删除-->
    <delete id="deleteStudentById" parameterType="int">
        DELETE FROM student where id = #{id}
    </delete>

测试代码:

@Test
    public void testDelete() {
        // 数据库会话实例
        SqlSession session = ssf.openSession();
        //删除用户
        Student student = session.selectOne("test.deleteStudentById",17);
        // 提交事务
        session.commit();
        session.close();

    }

五、Mybatis——修改

示例:修改用户

xml文件配置

 <update id="updateStudent" parameterType="com.xinhua.domain.Student">
        UPDATE student set studentName=#{studentName},gender=#{gender},address=#{address},email=#{email},remark=#{remark} where id = #{id}
    </update>

测试代码

@Test
    public void testUpdate() {
        // 数据库会话实例
        SqlSession sqlSession = null;
        // 创建数据库会话实例sqlSession
        sqlSession = ssf.openSession();
        // 修改用户信息
       Student student = new Student();
       student.setId(14);
       student.setStudentName("衣");
       student.setGender("女");
       student.setAddress("廊坊");
       student.setEmail("32642532629@qq.com");
       student.setEmail("euwfh");
        sqlSession.update("test.updateStudent", student);
        // 提交事务
        sqlSession.commit();
        sqlSession.close();
    }

注意:配置文件中的id的属性值,不一定要和方法名一样,但是一定要和sqlsession的参数名一样

文章来源:https://blog.csdn.net/weixin_73509711/article/details/135222509
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。