MyBatis-- CRUD(CRUD)

準備:作成しcom.jiang.pojoたエンティティクラスを作成

package com.jiang.pojo;

import lombok.Data;


//实体类

@Data
public class User {
    private int id;
    private String name;
    private String pwd;


}

1、名前空間

一貫性のあるインターフェースの名前空間とダオ/パッケージ名マッパーにパッケージ名!

2、選択

、クエリ選択します。

  • ID:名前空間にメソッド名に対応しています。
  • resultTypeと:SQLステートメントは、戻り値に実行されます!
  • ParameterType:パラメータタイプ!
  1. 書き込みUserMapperインタフェース

    //根据ID查询用户
    User getUserById(int id);
  2. 対応する書き込みUserMapperSQLステートメントを

    <select id="getUserById" parameterType="int" resultType="com.jiang.pojo.User">
            select * from mybatis.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);
    
            sqlSession.close();
        }
    

3、挿入

  1. 書き込みUserMapperインタフェース

    //insert一个用户
        int addUser(User user);
  2. 対応する書き込みUserMapperSQLステートメントを

     <insert id="addUser" parameterType="com.jiang.pojo.User">
            insert into mybatis.user (id, name, pwd) values (#{id},#{name},#{pwd});
        </insert>
  3. テスト

    package com.jiang.dao;
    
    import com.jiang.pojo.User;
    import com.jiang.utils.MybatisUtils;
    import org.apache.ibatis.session.SqlSession;
    import org.junit.Test;
    
    import java.util.List;
    
    public class UserDaoTest {
    
        @Test
        public void getUserLike(){
            SqlSession sqlSession = MybatisUtils.getSqlSession();
    
            UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    
            int i = mapper.addUser(new User(5, "姜嘉航","465123"));
            if (i>0){
                System.out.println("插入成功");
            }
            //提交事务
            sqlSession.commit();
            sqlSession.close();
        }
    
    
    }
    

図4に示すように、更新

  1. 書き込みUserMapperインタフェース

       //修改用户
        int updateUser(User user);
  2. 対応する書き込みUserMapperSQLステートメントを

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

    package com.jiang.dao;
    
    import com.jiang.pojo.User;
    import com.jiang.utils.MybatisUtils;
    import org.apache.ibatis.session.SqlSession;
    import org.junit.Test;
    
    import java.util.List;
    
    public class UserDaoTest {
    
        @Test
        public void getUserLike(){
            SqlSession sqlSession = MybatisUtils.getSqlSession();
    
            UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    
            int i = mapper.updateUser(new User(5, "哈哈","1265123"));
            if (i>0){
                System.out.println("更新成功");
            }
            //提交事务
            sqlSession.commit();
            sqlSession.close();
        }
    
    
    }
    

5、削除

  1. 書き込みUserMapperインタフェース

        //删除一个用户
        int deleteUser(int id);
  2. 対応する書き込みUserMapperSQLステートメントを

        <delete id="deleteUser" parameterType="int">
            delete from mybatis.user where id = #{id};
        </delete>
  3. テスト

    package com.jiang.dao;
    
    import com.jiang.pojo.User;
    import com.jiang.utils.MybatisUtils;
    import org.apache.ibatis.session.SqlSession;
    import org.junit.Test;
    
    import java.util.List;
    
    public class UserDaoTest {
    
        @Test
        public void getUserLike(){
            SqlSession sqlSession = MybatisUtils.getSqlSession();
    
            UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    
            mapper.deleteUser(5);
            System.out.println("删除成功");
            sqlSession.commit();
            sqlSession.close();
        }
    
    
    }
    

注意点:

  • CRUDは、トランザクションをコミットする必要があります!(SqlSession.commit();)

おすすめ

転載: www.cnblogs.com/godles/p/12333896.html