準備:作成し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:パラメータタイプ!
書き込み
UserMapper
インタフェース//根据ID查询用户 User getUserById(int id);
対応する書き込み
UserMapper
SQLステートメントを<select id="getUserById" parameterType="int" resultType="com.jiang.pojo.User"> select * from mybatis.user where id = #{id} </select>
テスト
@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、挿入
書き込み
UserMapper
インタフェース//insert一个用户 int addUser(User user);
対応する書き込み
UserMapper
SQLステートメントを<insert id="addUser" parameterType="com.jiang.pojo.User"> insert into mybatis.user (id, name, pwd) values (#{id},#{name},#{pwd}); </insert>
テスト
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に示すように、更新
書き込み
UserMapper
インタフェース//修改用户 int updateUser(User user);
対応する書き込み
UserMapper
SQLステートメントを<update id="updateUser" parameterType="com.jiang.pojo.User"> update mybatis.user set name=#{name},pwd=#{pwd} where id = #{id} ; </update>
テスト
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、削除
書き込み
UserMapper
インタフェース//删除一个用户 int deleteUser(int id);
対応する書き込み
UserMapper
SQLステートメントを<delete id="deleteUser" parameterType="int"> delete from mybatis.user where id = #{id}; </delete>
テスト
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();)