接上一篇,我們上一篇說到了不配置Mapper.xml檔案,直接在介面中使用注解進行映射,這里我們將簡單的增刪改查全部用注解實作一遍,
一、設定自動提交事務
在去實作之前,我們先想一下我們前面實行增刪改的事務時,每次都要手動提交事務,那么有沒有什么方法可以自動提交呢,答案是有的,
修改我們的工具類MyBatisUtil.class
將getSqlSession()方法修改如下:
public static SqlSession getSqlSession() { return sqlSessionFactory.openSession(true); }
嗯,沒錯,只是加了一個true,但這就是自動提交事務的開關,默認情況下是關閉的,
二、在UserMapper介面中宣告相應的方法并作注解
package com.jms.dao; import com.jms.pojo.User; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Update; import java.util.List; public interface UserMapper { @Select("select * from user") List<User> getUserList(); //查 @Select("select * from user where id=#{id}") User getUserByID(int id); //增 @Insert("insert into user values(#{id},#{username},#{password})") void insertUser(User user); //改 @Update("update user set username=#{username},password=#{password} where id=#{id}") void updateUser(User user); //刪 @Delete("delete from user where id=#{id}") void deleteUser(int id); }
三、junit測驗
package com.jms.dao; import com.jms.pojo.User; import com.jms.utils.MyBatisUtil; import org.apache.ibatis.session.SqlSession; import org.junit.Test; import java.util.List; public class UserMapperTest { @Test public void test() { SqlSession sqlSession = MyBatisUtil.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); List<User> userList = userMapper.getUserList(); for (User user : userList) { System.out.println(user); } } @Test public void select() { SqlSession sqlSession = MyBatisUtil.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User user = userMapper.getUserByID(10001); System.out.println(user); } @Test public void insert() { SqlSession sqlSession = MyBatisUtil.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); userMapper.insertUser(new User(10020, "jms20", "123456")); } @Test public void update() { SqlSession sqlSession = MyBatisUtil.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); userMapper.updateUser(new User(10020, "JMS20", "1111111")); } @Test public void delete() { SqlSession sqlSession = MyBatisUtil.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); userMapper.deleteUser(10020); } }
首先我們執行查詢全部,看一下目前表中的內容:

然后我們執行根據id進行查詢:

接下來我們去插入一行新的內容,并查詢全部看是否插入成功:

多了一行id為10020的,插入成功,
插入成功后我們執行update測驗,并查詢:

修改成功,
最后洗掉我們剛剛插入的那條陳述句并查詢:

回到了最初的狀態,洗掉成功,
以上就是使用注解映射來實作增刪改查的簡單應用了,
(本文僅作個人學習記錄用,如有紕漏敬請指正)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/508154.html
標籤:其他
上一篇:快速入門
下一篇:快速入門
