多线程实现大批量数据导入 (一)

2014-11-24 11:33:08 · 作者: · 浏览: 11

最近在做大批量数据导入问题,当数据量很大的时候(例如:20万条),程序在执行的时候,需要花很长的时间,为了提高程序的执行效率,现采用多线程的方法实现数据导入功能,具体实现如下:

【实现】[java]
package com.mypack.thread;

public class Student {

private String name;
private String sex;
private int age;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getSex() {
return sex;
}

public void setSex(String sex) {
this.sex = sex;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

}

package com.mypack.thread;

public class Student {

private String name;
private String sex;
private int age;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getSex() {
return sex;
}

public void setSex(String sex) {
this.sex = sex;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

}
[java]
package com.mypack.thread;

import java.util.ArrayList;
import java.util.List;

/**
*


    * 学生线程
    *

*
* @author liudong
*
*/
public class StudentThread extends Thread {

private List students = new ArrayList();

public StudentThread(List students) {
this.students = students;

}

public void run() {

for (Student student : students) {
System.out.println("当前线程:" + Thread.currentThread().getName());
System.out.println("name = " + student.getName() + " age = "
+ student.getAge() + " sex = " + student.getSex());
// 导入学生信息到数据库
}
}

}

package com.mypack.thread;

import java.util.ArrayList;
import java.util.List;

/**
*


    * 学生线程
    *

*
* @author liudong
*
*/
public class StudentThread extends Thread {

private List students = new ArrayList();

public StudentThread(List students) {
this.students = students;

}

public void run() {

for (Student student : students) {
System.out.println("当前线程:" + Thread.currentThread().getName());
System.out.println("name = " + student.getName() + " age = "
+ student.getAge() + " sex = " + student.getSex());
// 导入学生信息到数据库
}
}

}
[java]
package com.mypack.thread;

import java.util.ArrayList;
import java.util.List;

/**
*
*

    * 测试类
    *

*
* @author liudong
*
*/
public class Test {

public static void main(String[] args) {

Test test =