Commit caff71a30228330efb812afa23f044f181bd2f10
1 parent
cb71a275
数据分析优化
Showing
11 changed files
with
140 additions
and
148 deletions
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/AnalyzeController.java
@@ -74,6 +74,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -74,6 +74,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
74 | private final List<MrSchool> resultSchools = new ArrayList<>();//分析后学籍的信息 | 74 | private final List<MrSchool> resultSchools = new ArrayList<>();//分析后学籍的信息 |
75 | private static final int corePoolSize = Runtime.getRuntime().availableProcessors(); | 75 | private static final int corePoolSize = Runtime.getRuntime().availableProcessors(); |
76 | private static final ThreadPoolExecutor executor = new ThreadPoolExecutor(corePoolSize, corePoolSize + 1, 10L, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>(1000)); | 76 | private static final ThreadPoolExecutor executor = new ThreadPoolExecutor(corePoolSize, corePoolSize + 1, 10L, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>(1000)); |
77 | + private String random_number="00000000"; | ||
77 | 78 | ||
78 | 79 | ||
79 | @AutoLog(value = "来源数据管理-分页列表查询") | 80 | @AutoLog(value = "来源数据管理-分页列表查询") |
@@ -90,13 +91,13 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -90,13 +91,13 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
90 | System.out.println("未成年人数据批量新增总条数" + resultMinor.size()); | 91 | System.out.println("未成年人数据批量新增总条数" + resultMinor.size()); |
91 | System.out.println("学籍信息数据批量新增总条数" + resultSchools.size()); | 92 | System.out.println("学籍信息数据批量新增总条数" + resultSchools.size()); |
92 | long startTime2 = System.currentTimeMillis(); | 93 | long startTime2 = System.currentTimeMillis(); |
93 | - minorService.insertBatch(resultMinor,departs); | 94 | + minorService.insertBatch(resultMinor); |
94 | System.out.println("未成年人数据批量新增所用时间" + (System.currentTimeMillis() - startTime2) / 1000 + "秒"); | 95 | System.out.println("未成年人数据批量新增所用时间" + (System.currentTimeMillis() - startTime2) / 1000 + "秒"); |
95 | long startTime1 = System.currentTimeMillis(); | 96 | long startTime1 = System.currentTimeMillis(); |
96 | - familyService.insertBatch(resultFamily,departs); | 97 | + familyService.insertBatch(resultFamily); |
97 | System.out.println("家庭成员数据批量新增所用时间" + (System.currentTimeMillis() - startTime1) / 1000 + "秒"); | 98 | System.out.println("家庭成员数据批量新增所用时间" + (System.currentTimeMillis() - startTime1) / 1000 + "秒"); |
98 | long startTime3 = System.currentTimeMillis(); | 99 | long startTime3 = System.currentTimeMillis(); |
99 | - schoolService.insertBatch(resultSchools,departs); | 100 | + schoolService.insertBatch(resultSchools); |
100 | System.out.println("学籍信息入库时间" + (System.currentTimeMillis() - startTime3) / 1000 + "秒"); | 101 | System.out.println("学籍信息入库时间" + (System.currentTimeMillis() - startTime3) / 1000 + "秒"); |
101 | long startTime4 = System.currentTimeMillis(); | 102 | long startTime4 = System.currentTimeMillis(); |
102 | getSourceData(); | 103 | getSourceData(); |
@@ -114,53 +115,52 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -114,53 +115,52 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
114 | try { | 115 | try { |
115 | System.out.println("开始数据分析"); | 116 | System.out.println("开始数据分析"); |
116 | long startTime = System.currentTimeMillis(); | 117 | long startTime = System.currentTimeMillis(); |
117 | - ExecutorService pool = Executors.newFixedThreadPool(50); | ||
118 | - CompletableFuture<Map<String, GaPunishVo>> f1 = CompletableFuture.supplyAsync(() -> gaPunishService.queryAll(), executor); | ||
119 | - CompletableFuture<List<SpecialStudentVo>> f2 = CompletableFuture.supplyAsync(() -> specialStudentService.queryList(), executor); | ||
120 | - CompletableFuture<List<String>> f3 = CompletableFuture.supplyAsync(() -> mzOrphanService.getIdentityS(), executor); | ||
121 | - CompletableFuture<List<String>> f4 = CompletableFuture.supplyAsync(() -> mzUnsupportedService.getIdentityS(), executor); | ||
122 | - CompletableFuture<List<String>> f5 = CompletableFuture.supplyAsync(() -> mzLeftBehindChildrenService.getIdentityS(), executor); | ||
123 | - CompletableFuture<List<String>> f6 = CompletableFuture.supplyAsync(() -> mzAdoptionService.getIdentityS(), executor); | ||
124 | - CompletableFuture<List<MrSchool>> f7 = CompletableFuture.supplyAsync(() -> highSchoolService.getList(), executor); | ||
125 | - CompletableFuture<List<MrSchool>> f8 = CompletableFuture.supplyAsync(() -> primarySchoolService.getList(), executor); | ||
126 | -// CompletableFuture<Map<String,String>> f9 = CompletableFuture.supplyAsync(() -> gaDemographicService.getIdentityS(), executor); | 118 | +// ExecutorService pool = Executors.newFixedThreadPool(8); |
119 | +// CompletableFuture<Map<String, GaPunishVo>> f1 = CompletableFuture.supplyAsync(() -> gaPunishService.queryAll(), executor); | ||
120 | +// CompletableFuture<List<SpecialStudentVo>> f2 = CompletableFuture.supplyAsync(() -> specialStudentService.queryList(), executor); | ||
121 | +// CompletableFuture<List<String>> f3 = CompletableFuture.supplyAsync(() -> mzOrphanService.getIdentityS(), executor); | ||
122 | +// CompletableFuture<List<String>> f4 = CompletableFuture.supplyAsync(() -> mzUnsupportedService.getIdentityS(), executor); | ||
123 | +// CompletableFuture<List<String>> f5 = CompletableFuture.supplyAsync(() -> mzLeftBehindChildrenService.getIdentityS(), executor); | ||
124 | +// CompletableFuture<List<String>> f6 = CompletableFuture.supplyAsync(() -> mzAdoptionService.getIdentityS(), executor); | ||
125 | +// CompletableFuture<List<MrSchool>> f7 = CompletableFuture.supplyAsync(() -> highSchoolService.getList(), executor); | ||
126 | +// CompletableFuture<List<MrSchool>> f8 = CompletableFuture.supplyAsync(() -> primarySchoolService.getList(), executor); | ||
127 | //行政处罚数据 | 127 | //行政处罚数据 |
128 | -// Map<String,GaPunishVo> gaPunishVos = gaPunishService.queryAll(); | ||
129 | - Map<String, GaPunishVo> gaPunishVos = new HashMap<>(); | ||
130 | - gaPunishVos.putAll(f1.get()); | ||
131 | -// List<SpecialStudentVo> specialStudentVos = specialStudentService.queryList(); | ||
132 | - List<SpecialStudentVo> specialStudentVos = new ArrayList<>(); | ||
133 | - specialStudentVos.addAll(f2.get()); | 128 | + Map<String,GaPunishVo> gaPunishVos = gaPunishService.queryAll(); |
129 | +// Map<String, GaPunishVo> gaPunishVos = new HashMap<>(); | ||
130 | +// gaPunishVos.putAll(f1.get()); | ||
131 | + List<SpecialStudentVo> specialStudentVos = specialStudentService.queryList(); | ||
132 | +// List<SpecialStudentVo> specialStudentVos = new ArrayList<>(); | ||
133 | +// specialStudentVos.addAll(f2.get()); | ||
134 | //孤儿数据 | 134 | //孤儿数据 |
135 | -// List<String> mzOrphans = mzOrphanService.getIdentityS(); | ||
136 | - List<String> mzOrphans = new ArrayList<>(); | ||
137 | - mzOrphans.addAll(f3.get()); | 135 | + List<String> mzOrphans = mzOrphanService.getIdentityS(); |
136 | +// List<String> mzOrphans = new ArrayList<>(); | ||
137 | +// mzOrphans.addAll(f3.get()); | ||
138 | //无人抚养 | 138 | //无人抚养 |
139 | -// List<String> mzUnsupporteds = mzUnsupportedService.getIdentityS(); | ||
140 | - List<String> mzUnsupporteds = new ArrayList<>(); | ||
141 | - mzUnsupporteds.addAll(f4.get()); | 139 | + List<String> mzUnsupporteds = mzUnsupportedService.getIdentityS(); |
140 | +// List<String> mzUnsupporteds = new ArrayList<>(); | ||
141 | +// mzUnsupporteds.addAll(f4.get()); | ||
142 | //留守儿童 | 142 | //留守儿童 |
143 | -// List<String> mzLeftBehinds =mzLeftBehindChildrenService.getIdentityS(); | ||
144 | - List<String> mzLeftBehinds = new ArrayList<>(); | ||
145 | - mzLeftBehinds.addAll(f5.get()); | 143 | + List<String> mzLeftBehinds =mzLeftBehindChildrenService.getIdentityS(); |
144 | +// List<String> mzLeftBehinds = new ArrayList<>(); | ||
145 | +// mzLeftBehinds.addAll(f5.get()); | ||
146 | //领养 | 146 | //领养 |
147 | -// List<String> mzAdoptions =mzAdoptionService.getIdentityS(); | ||
148 | - List<String> mzAdoptions = new ArrayList<>(); | ||
149 | - mzAdoptions.addAll(f6.get()); | 147 | + List<String> mzAdoptions =mzAdoptionService.getIdentityS(); |
148 | +// List<String> mzAdoptions = new ArrayList<>(); | ||
149 | +// mzAdoptions.addAll(f6.get()); | ||
150 | //获取初高中学生信息 | 150 | //获取初高中学生信息 |
151 | -// List<MrSchool> highSchools = highSchoolService.getList(); | ||
152 | - List<MrSchool> highSchools = new ArrayList<>(); | ||
153 | - highSchools.addAll(f7.get()); | 151 | + List<MrSchool> highSchools = highSchoolService.getList(); |
152 | +// List<MrSchool> highSchools = new ArrayList<>(); | ||
153 | +// highSchools.addAll(f7.get()); | ||
154 | //获取幼小学生信息 | 154 | //获取幼小学生信息 |
155 | -// List<MrSchool> primarySchools = primarySchoolService.getList(); | ||
156 | - List<MrSchool> primarySchools = new ArrayList<>(); | ||
157 | - primarySchools.addAll(f8.get()); | 155 | + List<MrSchool> primarySchools = primarySchoolService.getList(); |
156 | +// List<MrSchool> primarySchools = new ArrayList<>(); | ||
157 | +// primarySchools.addAll(f8.get()); | ||
158 | //人口基本信息小于18岁 | 158 | //人口基本信息小于18岁 |
159 | // Map<String,String> gaDemographics =gaDemographicService.getIdentityS(); | 159 | // Map<String,String> gaDemographics =gaDemographicService.getIdentityS(); |
160 | // Map<String,String> gaDemographics =new HashMap<>(); | 160 | // Map<String,String> gaDemographics =new HashMap<>(); |
161 | // gaDemographics.putAll(f9.get()); | 161 | // gaDemographics.putAll(f9.get()); |
162 | //关闭线程池 | 162 | //关闭线程池 |
163 | - pool.shutdown(); | 163 | +// pool.shutdown(); |
164 | Map<String, String> gaDemographics = gaDemographicService.getIdentityS(); | 164 | Map<String, String> gaDemographics = gaDemographicService.getIdentityS(); |
165 | System.out.println("线程池查询用时" + (System.currentTimeMillis() - startTime) / 1000 + "秒"); | 165 | System.out.println("线程池查询用时" + (System.currentTimeMillis() - startTime) / 1000 + "秒"); |
166 | long startTime1 = System.currentTimeMillis(); | 166 | long startTime1 = System.currentTimeMillis(); |
@@ -311,7 +311,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -311,7 +311,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
311 | //初高中学生信息和人口基本信息的交集 | 311 | //初高中学生信息和人口基本信息的交集 |
312 | List<MrSchool> highSchoolIntersection = new ArrayList<>(); | 312 | List<MrSchool> highSchoolIntersection = new ArrayList<>(); |
313 | if (oConvertUtils.isNotEmpty(highSchools)) { | 313 | if (oConvertUtils.isNotEmpty(highSchools)) { |
314 | - highSchools.parallelStream().forEach(h -> { | 314 | + highSchools.stream().forEach(h -> { |
315 | if (oConvertUtils.isNotEmpty(gaDemographics) && oConvertUtils.isNotEmpty(gaDemographics.get(h.getIdentity()))) { | 315 | if (oConvertUtils.isNotEmpty(gaDemographics) && oConvertUtils.isNotEmpty(gaDemographics.get(h.getIdentity()))) { |
316 | if (h.getIdentity().equals(gaDemographics.get(h.getIdentity()))) { | 316 | if (h.getIdentity().equals(gaDemographics.get(h.getIdentity()))) { |
317 | //交集 | 317 | //交集 |
@@ -355,7 +355,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -355,7 +355,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
355 | //幼小学生信息和人口基本信息的交集 | 355 | //幼小学生信息和人口基本信息的交集 |
356 | List<MrSchool> primarySchoolIntersection = new ArrayList<>(); | 356 | List<MrSchool> primarySchoolIntersection = new ArrayList<>(); |
357 | if (oConvertUtils.isNotEmpty(primarySchools)) { | 357 | if (oConvertUtils.isNotEmpty(primarySchools)) { |
358 | - primarySchools.parallelStream().forEach(p -> { | 358 | + primarySchools.stream().forEach(p -> { |
359 | if (oConvertUtils.isNotEmpty(gaDemographics) && oConvertUtils.isNotEmpty(p) && oConvertUtils.isNotEmpty(gaDemographics.get(p.getIdentity()))) { | 359 | if (oConvertUtils.isNotEmpty(gaDemographics) && oConvertUtils.isNotEmpty(p) && oConvertUtils.isNotEmpty(gaDemographics.get(p.getIdentity()))) { |
360 | if (p.getIdentity().equals(gaDemographics.get(p.getIdentity()))) { | 360 | if (p.getIdentity().equals(gaDemographics.get(p.getIdentity()))) { |
361 | //交集 | 361 | //交集 |
@@ -391,8 +391,8 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -391,8 +391,8 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
391 | System.out.println("处理有人口基本信息但没有学籍信息的数据开始***********************" + gaDemographicDifference.size()); | 391 | System.out.println("处理有人口基本信息但没有学籍信息的数据开始***********************" + gaDemographicDifference.size()); |
392 | Map<String, Minor> minorMap = new HashMap<>(); | 392 | Map<String, Minor> minorMap = new HashMap<>(); |
393 | if (oConvertUtils.isNotEmpty(gaDemographicDifference) && oConvertUtils.isNotEmpty(gaHouseholds)) { | 393 | if (oConvertUtils.isNotEmpty(gaDemographicDifference) && oConvertUtils.isNotEmpty(gaHouseholds)) { |
394 | - gaDemographicDifference.parallelStream().forEach(idCard -> { | ||
395 | - if (oConvertUtils.isNotEmpty(idCard) && oConvertUtils.isNotEmpty(gaHouseholds.get(idCard))) { | 394 | + gaDemographicDifference.stream().forEach(idCard -> { |
395 | + if (oConvertUtils.isNotEmpty(idCard) && oConvertUtils.isNotEmpty(gaHouseholds.get(idCard)) && IDNumberUtil.checkID(idCard)) { | ||
396 | Minor minor = new Minor(); | 396 | Minor minor = new Minor(); |
397 | minor.setSchool(Minor.SCHOOL_STATUS_YES); | 397 | minor.setSchool(Minor.SCHOOL_STATUS_YES); |
398 | minor.setName(gaHouseholds.get(idCard).getName()); | 398 | minor.setName(gaHouseholds.get(idCard).getName()); |
@@ -440,7 +440,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -440,7 +440,7 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
440 | System.out.println("交集数据里的所属单位开始" + (System.currentTimeMillis() - startTime) / 1000); | 440 | System.out.println("交集数据里的所属单位开始" + (System.currentTimeMillis() - startTime) / 1000); |
441 | if (oConvertUtils.isNotEmpty(intersection) && oConvertUtils.isNotEmpty(departs) && departs.size() > 0) { | 441 | if (oConvertUtils.isNotEmpty(intersection) && oConvertUtils.isNotEmpty(departs) && departs.size() > 0) { |
442 | for (SysDepart d : departs) { | 442 | for (SysDepart d : departs) { |
443 | - intersection.parallelStream().forEach(i -> { | 443 | + intersection.stream().forEach(i -> { |
444 | if (oConvertUtils.isNotEmpty(i) && oConvertUtils.isNotEmpty(i.getSchool()) && oConvertUtils.isNotEmpty(d) && oConvertUtils.isNotEmpty(d.getCommonCode())) { | 444 | if (oConvertUtils.isNotEmpty(i) && oConvertUtils.isNotEmpty(i.getSchool()) && oConvertUtils.isNotEmpty(d) && oConvertUtils.isNotEmpty(d.getCommonCode())) { |
445 | if (d.getCommonCode().contains(i.getSchool())) { | 445 | if (d.getCommonCode().contains(i.getSchool())) { |
446 | i.setSysOrgCode(d.getOrgCode()); | 446 | i.setSysOrgCode(d.getOrgCode()); |
@@ -452,8 +452,8 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -452,8 +452,8 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
452 | System.out.println("交集数据里的所属单位结束总数"+intersection.size()+"交集数据里的所属单位结束" + (System.currentTimeMillis() - startTime) / 1000); | 452 | System.out.println("交集数据里的所属单位结束总数"+intersection.size()+"交集数据里的所属单位结束" + (System.currentTimeMillis() - startTime) / 1000); |
453 | Date creatDate = new Date(); | 453 | Date creatDate = new Date(); |
454 | if (oConvertUtils.isNotEmpty(intersection)) { | 454 | if (oConvertUtils.isNotEmpty(intersection)) { |
455 | - intersection.parallelStream().forEach(i -> { | ||
456 | - if (oConvertUtils.isNotEmpty(i) && oConvertUtils.isNotEmpty(i.getIdentity())) { | 455 | + intersection.stream().forEach(i -> { |
456 | + if (oConvertUtils.isNotEmpty(i) && oConvertUtils.isNotEmpty(i.getIdentity()) && IDNumberUtil.checkID(i.getIdentity())) { | ||
457 | Minor minor = new Minor(); | 457 | Minor minor = new Minor(); |
458 | //身份证号 | 458 | //身份证号 |
459 | String idCard = i.getIdentity(); | 459 | String idCard = i.getIdentity(); |
@@ -507,9 +507,9 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -507,9 +507,9 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
507 | Date creatTime = new Date(); | 507 | Date creatTime = new Date(); |
508 | if (oConvertUtils.isNotEmpty(difference) && oConvertUtils.isNotEmpty(departs) && departs.size() > 0) { | 508 | if (oConvertUtils.isNotEmpty(difference) && oConvertUtils.isNotEmpty(departs) && departs.size() > 0) { |
509 | for (SysDepart d : departs) { | 509 | for (SysDepart d : departs) { |
510 | - difference.parallelStream().forEach(m -> { | 510 | + difference.stream().forEach(m -> { |
511 | Minor minor = new Minor(); | 511 | Minor minor = new Minor(); |
512 | - if (oConvertUtils.isNotEmpty(m)) { | 512 | + if (oConvertUtils.isNotEmpty(m) && oConvertUtils.isNotEmpty(m.getIdentity()) && IDNumberUtil.checkID(m.getIdentity())) { |
513 | if (oConvertUtils.isNotEmpty(d) && oConvertUtils.isNotEmpty(d.getCommonCode()) && oConvertUtils.isNotEmpty(m.getSchool())) { | 513 | if (oConvertUtils.isNotEmpty(d) && oConvertUtils.isNotEmpty(d.getCommonCode()) && oConvertUtils.isNotEmpty(m.getSchool())) { |
514 | if (d.getCommonCode().contains(m.getSchool()) && oConvertUtils.isNotEmpty(minorMap.get(m.getIdentity()))) { | 514 | if (d.getCommonCode().contains(m.getSchool()) && oConvertUtils.isNotEmpty(minorMap.get(m.getIdentity()))) { |
515 | minor.setSysOrgCode(d.getOrgCode()); | 515 | minor.setSysOrgCode(d.getOrgCode()); |
@@ -692,9 +692,24 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -692,9 +692,24 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
692 | //户号-与监护人 | 692 | //户号-与监护人 |
693 | Map<String, Family> guardians = new HashMap<>(); | 693 | Map<String, Family> guardians = new HashMap<>(); |
694 | if (oConvertUtils.isNotEmpty(gaHouseholds)) { | 694 | if (oConvertUtils.isNotEmpty(gaHouseholds)) { |
695 | + int i=0; | ||
695 | for (Map.Entry<String, Family> m : gaHouseholds.entrySet()) { | 696 | for (Map.Entry<String, Family> m : gaHouseholds.entrySet()) { |
696 | String mapKey = m.getKey(); | 697 | String mapKey = m.getKey(); |
697 | Family family = m.getValue(); | 698 | Family family = m.getValue(); |
699 | + if (oConvertUtils.isNotEmpty(family)) { | ||
700 | + i=i+1; | ||
701 | + if (oConvertUtils.isNotEmpty(gaPunishVos) && oConvertUtils.isNotEmpty(gaPunishVos.get(mapKey))) { | ||
702 | + family.setCrime(Family.IS_CRIME); | ||
703 | + if (oConvertUtils.isNotEmpty(gaPunishVos.get(mapKey).getAjmc())) { | ||
704 | + family.setOther(gaPunishVos.get(mapKey).getAjmc()); | ||
705 | + } | ||
706 | + if (oConvertUtils.isNotEmpty(gaPunishVos.get(mapKey).getSldwmc())) { | ||
707 | + family.setReason(gaPunishVos.get(mapKey).getSldwmc()); | ||
708 | + } | ||
709 | + } else { | ||
710 | + family.setCrime(Family.IS_NOT_CRIME); | ||
711 | + } | ||
712 | + } | ||
698 | if (oConvertUtils.isNotEmpty(family) && oConvertUtils.isNotEmpty(family.getHouseholdNum()) && oConvertUtils.isNotEmpty(family.getIdentity())) { | 713 | if (oConvertUtils.isNotEmpty(family) && oConvertUtils.isNotEmpty(family.getHouseholdNum()) && oConvertUtils.isNotEmpty(family.getIdentity())) { |
699 | String houseNum = family.getHouseholdNum(); | 714 | String houseNum = family.getHouseholdNum(); |
700 | List<Family> list = new ArrayList<>(); | 715 | List<Family> list = new ArrayList<>(); |
@@ -715,19 +730,6 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | @@ -715,19 +730,6 @@ public class AnalyzeController extends JeecgController<GaDemographic, IGaDemogra | ||
715 | } | 730 | } |
716 | familyMaps.put(houseNum, list); | 731 | familyMaps.put(houseNum, list); |
717 | } | 732 | } |
718 | - if (oConvertUtils.isNotEmpty(family)) { | ||
719 | - if (oConvertUtils.isNotEmpty(gaPunishVos) && oConvertUtils.isNotEmpty(gaPunishVos.get(mapKey))) { | ||
720 | - family.setCrime(Family.IS_CRIME); | ||
721 | - if (oConvertUtils.isNotEmpty(gaPunishVos.get(mapKey).getAjmc())) { | ||
722 | - family.setOther(gaPunishVos.get(mapKey).getAjmc()); | ||
723 | - } | ||
724 | - if (oConvertUtils.isNotEmpty(gaPunishVos.get(mapKey).getSldwmc())) { | ||
725 | - family.setReason(gaPunishVos.get(mapKey).getSldwmc()); | ||
726 | - } | ||
727 | - } else { | ||
728 | - family.setCrime(Family.IS_NOT_CRIME); | ||
729 | - } | ||
730 | - } | ||
731 | } | 733 | } |
732 | } | 734 | } |
733 | 735 |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/Family.java
@@ -30,10 +30,9 @@ public class Family implements Serializable { | @@ -30,10 +30,9 @@ public class Family implements Serializable { | ||
30 | public static final Integer IS_CRIME=1;//是 | 30 | public static final Integer IS_CRIME=1;//是 |
31 | public static final Integer IS_NOT_CRIME=0;//否 | 31 | public static final Integer IS_NOT_CRIME=0;//否 |
32 | 32 | ||
33 | - /**主键*/ | ||
34 | - @TableId(type = IdType.ASSIGN_ID) | 33 | + @TableId(type = IdType.AUTO) |
35 | @ApiModelProperty(value = "主键") | 34 | @ApiModelProperty(value = "主键") |
36 | - private String id; | 35 | + private Integer id; |
37 | /**创建人*/ | 36 | /**创建人*/ |
38 | @ApiModelProperty(value = "创建人") | 37 | @ApiModelProperty(value = "创建人") |
39 | private String createBy; | 38 | private String createBy; |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/MrSchool.java
@@ -32,7 +32,7 @@ public class MrSchool implements Serializable { | @@ -32,7 +32,7 @@ public class MrSchool implements Serializable { | ||
32 | private static final long serialVersionUID = 1L; | 32 | private static final long serialVersionUID = 1L; |
33 | 33 | ||
34 | /**主键*/ | 34 | /**主键*/ |
35 | - @TableId(type = IdType.ASSIGN_ID) | 35 | + @TableId(type = IdType.ASSIGN_ID) |
36 | @ApiModelProperty(value = "主键") | 36 | @ApiModelProperty(value = "主键") |
37 | private String id; | 37 | private String id; |
38 | /**创建人*/ | 38 | /**创建人*/ |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/xml/PrimarySchoolMapper.xml
@@ -5,17 +5,17 @@ | @@ -5,17 +5,17 @@ | ||
5 | <resultMap id="mrSchool" type="org.jeecg.modules.system.entity.MrSchool"> | 5 | <resultMap id="mrSchool" type="org.jeecg.modules.system.entity.MrSchool"> |
6 | <result column="name" property="name"/> | 6 | <result column="name" property="name"/> |
7 | <result column="identity" property="identity"/> | 7 | <result column="identity" property="identity"/> |
8 | - <result column="class_name" property="className"/> | 8 | + <result column="className" property="className"/> |
9 | <result column="address" property="address"/> | 9 | <result column="address" property="address"/> |
10 | <result column="school" property="school"/> | 10 | <result column="school" property="school"/> |
11 | <result column="phone" property="phone"/> | 11 | <result column="phone" property="phone"/> |
12 | - <result column="admission_date" property="admissionDate"/> | ||
13 | - <result column="member_one" property="memberOne"/> | ||
14 | - <result column="connect_one" property="connectOne"/> | ||
15 | - <result column="phone_one" property="phoneOne"/> | ||
16 | - <result column="member_two" property="memberTwo"/> | ||
17 | - <result column="connect_two" property="connectTwo"/> | ||
18 | - <result column="phone_two" property="phoneTwo"/> | 12 | + <result column="admissionDate" property="admissionDate"/> |
13 | + <result column="memberOne" property="memberOne"/> | ||
14 | + <result column="connectOne" property="connectOne"/> | ||
15 | + <result column="phoneOne" property="phoneOne"/> | ||
16 | + <result column="memberTwo" property="memberTwo"/> | ||
17 | + <result column="connectTwo" property="connectTwo"/> | ||
18 | + <result column="phoneTwo" property="phoneTwo"/> | ||
19 | </resultMap> | 19 | </resultMap> |
20 | 20 | ||
21 | <select id="getList" resultMap="mrSchool"> | 21 | <select id="getList" resultMap="mrSchool"> |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/IFamilyService.java
@@ -18,5 +18,5 @@ public interface IFamilyService extends IService<Family> { | @@ -18,5 +18,5 @@ public interface IFamilyService extends IService<Family> { | ||
18 | public List<Family> selectByMainId(String mainId); | 18 | public List<Family> selectByMainId(String mainId); |
19 | 19 | ||
20 | 20 | ||
21 | - public Integer insertBatch(List<Family> list,List<SysDepart> departs); | 21 | + public Integer insertBatch(List<Family> list); |
22 | } | 22 | } |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/IMinorService.java
@@ -40,5 +40,5 @@ public interface IMinorService extends IService<Minor> { | @@ -40,5 +40,5 @@ public interface IMinorService extends IService<Minor> { | ||
40 | public void delBatchMain (Collection<? extends Serializable> idList); | 40 | public void delBatchMain (Collection<? extends Serializable> idList); |
41 | 41 | ||
42 | 42 | ||
43 | - public Integer insertBatch(List<Minor> list,List<SysDepart> departs); | 43 | + public Integer insertBatch(List<Minor> list); |
44 | } | 44 | } |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/IMrSchoolService.java
@@ -13,5 +13,5 @@ import java.util.List; | @@ -13,5 +13,5 @@ import java.util.List; | ||
13 | * @Version: V1.0 | 13 | * @Version: V1.0 |
14 | */ | 14 | */ |
15 | public interface IMrSchoolService extends IService<MrSchool> { | 15 | public interface IMrSchoolService extends IService<MrSchool> { |
16 | - public Integer insertBatch(List<MrSchool> list,List<SysDepart> departs); | 16 | + public Integer insertBatch(List<MrSchool> list); |
17 | } | 17 | } |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/FamilyServiceImpl.java
1 | package org.jeecg.modules.system.service.impl; | 1 | package org.jeecg.modules.system.service.impl; |
2 | 2 | ||
3 | +import org.jeecg.common.util.oConvertUtils; | ||
3 | import org.jeecg.modules.system.entity.Family; | 4 | import org.jeecg.modules.system.entity.Family; |
4 | import org.jeecg.modules.system.entity.Minor; | 5 | import org.jeecg.modules.system.entity.Minor; |
5 | import org.jeecg.modules.system.entity.SysDepart; | 6 | import org.jeecg.modules.system.entity.SysDepart; |
@@ -19,6 +20,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | @@ -19,6 +20,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | ||
19 | import org.springframework.beans.factory.annotation.Autowired; | 20 | import org.springframework.beans.factory.annotation.Autowired; |
20 | import org.springframework.transaction.TransactionDefinition; | 21 | import org.springframework.transaction.TransactionDefinition; |
21 | import org.springframework.transaction.TransactionStatus; | 22 | import org.springframework.transaction.TransactionStatus; |
23 | +import org.springframework.transaction.annotation.Transactional; | ||
22 | 24 | ||
23 | import javax.annotation.Resource; | 25 | import javax.annotation.Resource; |
24 | 26 | ||
@@ -44,38 +46,49 @@ public class FamilyServiceImpl extends ServiceImpl<FamilyMapper, Family> impleme | @@ -44,38 +46,49 @@ public class FamilyServiceImpl extends ServiceImpl<FamilyMapper, Family> impleme | ||
44 | public List<Family> selectByMainId(String mainId) { | 46 | public List<Family> selectByMainId(String mainId) { |
45 | return familyMapper.selectByMainId(mainId); | 47 | return familyMapper.selectByMainId(mainId); |
46 | } | 48 | } |
47 | - //分段大小 | ||
48 | - private int splitSize = 100000; | 49 | + |
50 | + private Integer random_number=00000000; | ||
51 | + | ||
49 | /** | 52 | /** |
50 | * 批量新增 | 53 | * 批量新增 |
51 | * @param list | 54 | * @param list |
52 | * @return | 55 | * @return |
53 | */ | 56 | */ |
54 | @Override | 57 | @Override |
55 | - public Integer insertBatch(List<Family> list,List<SysDepart> departs) { | 58 | + @Transactional |
59 | + public Integer insertBatch(List<Family> list) { | ||
60 | +// if(oConvertUtils.isNotEmpty(list)){ | ||
61 | +// for(int i=0;i<list.size();i++){ | ||
62 | +// String id=System.currentTimeMillis()+String.valueOf((random_number+i)); | ||
63 | +// System.out.println(id); | ||
64 | +// list.get(i).setId(id); | ||
65 | +// } | ||
66 | +// } | ||
56 | updateStudentWithThreads(list); | 67 | updateStudentWithThreads(list); |
57 | return list.size(); | 68 | return list.size(); |
58 | } | 69 | } |
59 | private void addBatch(List<Family> list, CountDownLatch threadLatch){ | 70 | private void addBatch(List<Family> list, CountDownLatch threadLatch){ |
60 | - TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition); | 71 | +// TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition); |
61 | System.out.println("子线程:" + Thread.currentThread().getName()); | 72 | System.out.println("子线程:" + Thread.currentThread().getName()); |
62 | try { | 73 | try { |
63 | list.forEach(s -> { | 74 | list.forEach(s -> { |
64 | - String newTeacher = "TNO_" + new Random().nextInt(100); | ||
65 | - familyMapper.insert(s); | 75 | + if(oConvertUtils.isNotEmpty(s)){ |
76 | + familyMapper.insert(s); | ||
77 | + } | ||
66 | }); | 78 | }); |
67 | - dataSourceTransactionManager.commit(transactionStatus); | 79 | +// familyMapper.insertBatch(list); |
80 | +// dataSourceTransactionManager.commit(transactionStatus); | ||
68 | threadLatch.countDown(); | 81 | threadLatch.countDown(); |
69 | } catch (Throwable e) { | 82 | } catch (Throwable e) { |
70 | e.printStackTrace(); | 83 | e.printStackTrace(); |
71 | - dataSourceTransactionManager.rollback(transactionStatus); | 84 | +// dataSourceTransactionManager.rollback(transactionStatus); |
72 | } | 85 | } |
73 | } | 86 | } |
74 | 87 | ||
75 | 88 | ||
76 | public void updateStudentWithThreads(List<Family> list) { | 89 | public void updateStudentWithThreads(List<Family> list) { |
77 | // 线程数量 | 90 | // 线程数量 |
78 | - final Integer threadCount = 1; | 91 | + final Integer threadCount = 10; |
79 | 92 | ||
80 | //每个线程处理的数据量 | 93 | //每个线程处理的数据量 |
81 | final Integer dataPartionLength = (list.size() + threadCount - 1) / threadCount; | 94 | final Integer dataPartionLength = (list.size() + threadCount - 1) / threadCount; |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/GaHouseholdServiceImpl.java
@@ -36,7 +36,7 @@ public class GaHouseholdServiceImpl extends ServiceImpl<GaHouseholdMapper, GaHou | @@ -36,7 +36,7 @@ public class GaHouseholdServiceImpl extends ServiceImpl<GaHouseholdMapper, GaHou | ||
36 | System.out.println("数据查询时间" + (System.currentTimeMillis() - startTime) / 1000 + "秒"); | 36 | System.out.println("数据查询时间" + (System.currentTimeMillis() - startTime) / 1000 + "秒"); |
37 | long startTime2 = System.currentTimeMillis(); | 37 | long startTime2 = System.currentTimeMillis(); |
38 | if (oConvertUtils.isNotEmpty(families)) { | 38 | if (oConvertUtils.isNotEmpty(families)) { |
39 | - families.parallelStream().forEach(g -> { | 39 | + families.stream().forEach(g -> { |
40 | if (oConvertUtils.isNotEmpty(g) && oConvertUtils.isNotEmpty(g.getIdentity())) { | 40 | if (oConvertUtils.isNotEmpty(g) && oConvertUtils.isNotEmpty(g.getIdentity())) { |
41 | familyMap.put(g.getIdentity(), g); | 41 | familyMap.put(g.getIdentity(), g); |
42 | } | 42 | } |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/MinorServiceImpl.java
@@ -2,6 +2,7 @@ package org.jeecg.modules.system.service.impl; | @@ -2,6 +2,7 @@ package org.jeecg.modules.system.service.impl; | ||
2 | 2 | ||
3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
4 | import javassist.bytecode.analysis.Executor; | 4 | import javassist.bytecode.analysis.Executor; |
5 | +import org.jeecg.common.util.oConvertUtils; | ||
5 | import org.jeecg.modules.system.entity.Family; | 6 | import org.jeecg.modules.system.entity.Family; |
6 | import org.jeecg.modules.system.entity.Minor; | 7 | import org.jeecg.modules.system.entity.Minor; |
7 | import org.jeecg.modules.system.entity.SysDepart; | 8 | import org.jeecg.modules.system.entity.SysDepart; |
@@ -47,9 +48,7 @@ public class MinorServiceImpl extends ServiceImpl<MinorMapper, Minor> implements | @@ -47,9 +48,7 @@ public class MinorServiceImpl extends ServiceImpl<MinorMapper, Minor> implements | ||
47 | @Resource | 48 | @Resource |
48 | private TransactionDefinition transactionDefinition; | 49 | private TransactionDefinition transactionDefinition; |
49 | 50 | ||
50 | - | ||
51 | - //分段大小 | ||
52 | - private int splitSize = 100000; | 51 | + private Integer random_number=00000000; |
53 | 52 | ||
54 | @Override | 53 | @Override |
55 | @Transactional | 54 | @Transactional |
@@ -120,54 +119,41 @@ public class MinorServiceImpl extends ServiceImpl<MinorMapper, Minor> implements | @@ -120,54 +119,41 @@ public class MinorServiceImpl extends ServiceImpl<MinorMapper, Minor> implements | ||
120 | } | 119 | } |
121 | 120 | ||
122 | @Override | 121 | @Override |
123 | - public Integer insertBatch(List<Minor> list,List<SysDepart> departs) { | 122 | + @Transactional |
123 | + public Integer insertBatch(List<Minor> list) { | ||
124 | + if(oConvertUtils.isNotEmpty(list)){ | ||
125 | + for(int i=0;i<list.size();i++){ | ||
126 | + String id=System.currentTimeMillis()+String.valueOf((random_number+i)); | ||
127 | + list.get(i).setId(id); | ||
128 | + } | ||
129 | + } | ||
124 | updateStudentWithThreads(list); | 130 | updateStudentWithThreads(list); |
125 | return list.size(); | 131 | return list.size(); |
126 | } | 132 | } |
127 | 133 | ||
128 | - /** | ||
129 | - * 将list集合平均分成几等份 | ||
130 | - * | ||
131 | - * @param num 分的份数 | ||
132 | - * @param list 需要分的集合 | ||
133 | - */ | ||
134 | - private List splitList(List list, Integer num) { | ||
135 | - int listSize = list.size(); //list 长度 | ||
136 | - List<List> splitLists = new ArrayList<>(); | ||
137 | - List stringlist = new ArrayList<>(); | ||
138 | - for ( int i = 0; i < listSize; i++ ) { | ||
139 | - stringlist.add(list.get(i)); | ||
140 | - if ( ((i + 1) % num == 0) || (i + 1 == listSize) ) { | ||
141 | - splitLists.add(stringlist); | ||
142 | - stringlist = new ArrayList<>(); | ||
143 | - } | ||
144 | - } | ||
145 | - return splitLists; | ||
146 | - } | ||
147 | 134 | ||
148 | private void addBatch(List<Minor> list, CountDownLatch threadLatch){ | 135 | private void addBatch(List<Minor> list, CountDownLatch threadLatch){ |
149 | - TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition); | 136 | +// TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition); |
150 | System.out.println("子线程:" + Thread.currentThread().getName()); | 137 | System.out.println("子线程:" + Thread.currentThread().getName()); |
151 | try { | 138 | try { |
152 | list.forEach(s -> { | 139 | list.forEach(s -> { |
153 | - // 更新教师信息 | ||
154 | - // String teacher = s.getTeacher(); | ||
155 | - String newTeacher = "TNO_" + new Random().nextInt(100); | ||
156 | -// s.setTeacher(newTeacher); | ||
157 | - minorMapper.insert(s); | 140 | + if(oConvertUtils.isNotEmpty(s)){ |
141 | + minorMapper.insert(s); | ||
142 | + } | ||
158 | }); | 143 | }); |
159 | - dataSourceTransactionManager.commit(transactionStatus); | 144 | +// minorMapper.insertBatch(list); |
145 | +// dataSourceTransactionManager.commit(transactionStatus); | ||
160 | threadLatch.countDown(); | 146 | threadLatch.countDown(); |
161 | } catch (Throwable e) { | 147 | } catch (Throwable e) { |
162 | e.printStackTrace(); | 148 | e.printStackTrace(); |
163 | - dataSourceTransactionManager.rollback(transactionStatus); | 149 | +// dataSourceTransactionManager.rollback(transactionStatus); |
164 | } | 150 | } |
165 | } | 151 | } |
166 | 152 | ||
167 | 153 | ||
168 | public void updateStudentWithThreads(List<Minor> list) { | 154 | public void updateStudentWithThreads(List<Minor> list) { |
169 | // 线程数量 | 155 | // 线程数量 |
170 | - final Integer threadCount = 1; | 156 | + final Integer threadCount = 10; |
171 | 157 | ||
172 | //每个线程处理的数据量 | 158 | //每个线程处理的数据量 |
173 | final Integer dataPartionLength = (list.size() + threadCount - 1) / threadCount; | 159 | final Integer dataPartionLength = (list.size() + threadCount - 1) / threadCount; |
juvenile-prosecution-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/MrSchoolServiceImpl.java
1 | package org.jeecg.modules.system.service.impl; | 1 | package org.jeecg.modules.system.service.impl; |
2 | 2 | ||
3 | +import org.jeecg.common.util.oConvertUtils; | ||
3 | import org.jeecg.modules.system.entity.Minor; | 4 | import org.jeecg.modules.system.entity.Minor; |
4 | import org.jeecg.modules.system.entity.MrSchool; | 5 | import org.jeecg.modules.system.entity.MrSchool; |
5 | import org.jeecg.modules.system.entity.SysDepart; | 6 | import org.jeecg.modules.system.entity.SysDepart; |
@@ -11,6 +12,7 @@ import org.springframework.stereotype.Service; | @@ -11,6 +12,7 @@ import org.springframework.stereotype.Service; | ||
11 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 12 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
12 | import org.springframework.transaction.TransactionDefinition; | 13 | import org.springframework.transaction.TransactionDefinition; |
13 | import org.springframework.transaction.TransactionStatus; | 14 | import org.springframework.transaction.TransactionStatus; |
15 | +import org.springframework.transaction.annotation.Transactional; | ||
14 | 16 | ||
15 | import javax.annotation.Resource; | 17 | import javax.annotation.Resource; |
16 | import java.util.ArrayList; | 18 | import java.util.ArrayList; |
@@ -39,58 +41,48 @@ public class MrSchoolServiceImpl extends ServiceImpl<MrSchoolMapper, MrSchool> i | @@ -39,58 +41,48 @@ public class MrSchoolServiceImpl extends ServiceImpl<MrSchoolMapper, MrSchool> i | ||
39 | @Resource | 41 | @Resource |
40 | private TransactionDefinition transactionDefinition; | 42 | private TransactionDefinition transactionDefinition; |
41 | 43 | ||
42 | - //分段大小 | ||
43 | - private int splitSize = 100000; | 44 | + private Integer random_number=00000000; |
45 | + | ||
44 | 46 | ||
45 | @Override | 47 | @Override |
46 | - public Integer insertBatch(List<MrSchool> list,List<SysDepart> departs) { | 48 | + @Transactional |
49 | + public Integer insertBatch(List<MrSchool> list) { | ||
50 | + if(oConvertUtils.isNotEmpty(list)){ | ||
51 | + for(int i=0;i<list.size();i++){ | ||
52 | + String id=System.currentTimeMillis()+String.valueOf((random_number+i)); | ||
53 | + list.get(i).setId(id); | ||
54 | + } | ||
55 | + } | ||
47 | updateStudentWithThreads(list); | 56 | updateStudentWithThreads(list); |
48 | return list.size(); | 57 | return list.size(); |
49 | } | 58 | } |
50 | 59 | ||
51 | - /** | ||
52 | - * 将list集合平均分成几等份 | ||
53 | - * | ||
54 | - * @param num 分的份数 | ||
55 | - * @param list 需要分的集合 | ||
56 | - */ | ||
57 | - private List splitList(List list, Integer num) { | ||
58 | - int listSize = list.size(); //list 长度 | ||
59 | - List<List> splitLists = new ArrayList<>(); | ||
60 | - List stringlist = new ArrayList<>(); | ||
61 | - for ( int i = 0; i < listSize; i++ ) { | ||
62 | - stringlist.add(list.get(i)); | ||
63 | - if ( ((i + 1) % num == 0) || (i + 1 == listSize) ) { | ||
64 | - splitLists.add(stringlist); | ||
65 | - stringlist = new ArrayList<>(); | ||
66 | - } | ||
67 | - } | ||
68 | - return splitLists; | ||
69 | - } | 60 | +// public static void main(String[] args){ |
61 | +// System.out.println(System.currentTimeMillis()+"00000000"+1); | ||
62 | +// } | ||
70 | 63 | ||
71 | private void addBatch(List<MrSchool> list, CountDownLatch threadLatch){ | 64 | private void addBatch(List<MrSchool> list, CountDownLatch threadLatch){ |
72 | - TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition); | 65 | +// TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition); |
73 | System.out.println("子线程:" + Thread.currentThread().getName()); | 66 | System.out.println("子线程:" + Thread.currentThread().getName()); |
74 | try { | 67 | try { |
75 | list.forEach(s -> { | 68 | list.forEach(s -> { |
76 | - // 更新教师信息 | ||
77 | - // String teacher = s.getTeacher(); | ||
78 | - String newTeacher = "TNO_" + new Random().nextInt(100); | ||
79 | -// s.setTeacher(newTeacher); | ||
80 | - schoolMapper.insert(s); | 69 | + if(oConvertUtils.isNotEmpty(s)){ |
70 | +// s.setId(); | ||
71 | + schoolMapper.insert(s); | ||
72 | + } | ||
81 | }); | 73 | }); |
82 | - dataSourceTransactionManager.commit(transactionStatus); | 74 | +// dataSourceTransactionManager.commit(transactionStatus); |
83 | threadLatch.countDown(); | 75 | threadLatch.countDown(); |
84 | } catch (Throwable e) { | 76 | } catch (Throwable e) { |
85 | e.printStackTrace(); | 77 | e.printStackTrace(); |
86 | - dataSourceTransactionManager.rollback(transactionStatus); | 78 | +// dataSourceTransactionManager.rollback(transactionStatus); |
87 | } | 79 | } |
88 | } | 80 | } |
89 | 81 | ||
90 | 82 | ||
91 | public void updateStudentWithThreads(List<MrSchool> list) { | 83 | public void updateStudentWithThreads(List<MrSchool> list) { |
92 | // 线程数量 | 84 | // 线程数量 |
93 | - final Integer threadCount = 1; | 85 | + final Integer threadCount = 10; |
94 | 86 | ||
95 | //每个线程处理的数据量 | 87 | //每个线程处理的数据量 |
96 | final Integer dataPartionLength = (list.size() + threadCount - 1) / threadCount; | 88 | final Integer dataPartionLength = (list.size() + threadCount - 1) / threadCount; |