https://blog.csdn.net/yangliuhbhd/category_6393706.html
今天學習中看到關於Sql Session 用法以及優缺點,上面的鏈接一個高手的學習筆記,
關於mybatis的,自我承認肯定沒人家寫的好,總結的詳細,就把人家的鏈接給收藏了。
下面總結一下關於Sql session批量插入的用法:
//設置ExecutorType.BATCH原理:把SQL語句發個數據庫,數據庫預編譯好,數據庫等待需要運行的參數,接收到參數后一次運行
java代碼部分:
SqlSession session = getSqlSessionFactory().openSession(ExecutorType.BATCH);
try {
UserMapper uMapper = (UserMapper) session.getMapper(UserMapper.class);
List<User> userList=new ArrayList<User>();
for (int i = 0; i <100000 ; i++) {
User user=new User(UUID.randomUUID().toString().substring(), "小明", now(), now(), 1);
userList.add(user);
deptMapper.insertUserBatch(userList);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
session.commit();
session.close();
}
創建一個簡單的 insert 語句:
<insert id="insertUserBatch">
insert into userList values (#{value});
</insert>