前两天做了一个导入的功能,导入开始的时候非常慢,导入2w条数据要1分多钟,后来一点一点的优化,从直接把list怼进Mysql中,到分配把list导入Mysql中,到多线程把list导入Mysql中。时间是一点一点的变少了。非常的爽,最后变成了10s以内。下面就展示一下过程。
使用mybatis的批量导入操作:
- @Transactional(rollbackFor = Exception.class)
- public int addFreshStudentsNew2(List
list, String schoolNo) { - if (list == null || list.isEmpty()) {
- return 0;
- }
- List
studentEntityList = new LinkedList<>(); - List
enrollStudentEntityList = new LinkedList<>(); - List
allusersEntityList = new LinkedList<>(); -
- for (FreshStudentAndStudentModel freshStudentAndStudentModel : list) {
-
- EnrollS