接口
int thread1();
int thread2();
dao实现
<update id="thread1">
BEGIN
update t_base_employee t set t.modify_time=sysdate where t.employee_code='108251';
update t_base_employee t set t.modify_time=sysdate where t.employee_code='M53291';
end;
</update>
<update id="thread2">
BEGIN
update t_base_employee t set t.modify_time=sysdate where t.employee_code='M53291';
update t_base_employee t set t.modify_time=sysdate where t.employee_code='108251';
end;
</update>
测试
@Test
public void threadTest() throws InterruptedException {
int threadNumber=3;
final CountDownLatch countDownLatch = new CountDownLatch(threadNumber);
for (int i = 0; i < threadNumber; i++) {
final int ii=i;
if (i % 2 == 0) {
new Thread(new Runnable() {
@Override
public void run() {
baseSysLoggerService.thread1();
System.out.println("第"+(ii+1)+"个线程执行完成");
countDownLatch.countDown();
}
}).start();
} else {
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("第"+(ii+1)+"个线程执行完成");
baseSysLoggerService.thread2();
countDownLatch.countDown();
}
}).start();
}
}
countDownLatch.await();
System.out.println("主线程执行完成");
}