//五级目录
public static List<Villages> testExcelOne() throws Exception {
XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream(new File("E:\\admin\\villages.xlsx")));
XSSFSheet sheet = workbook.getSheetAt(0);
List<Villages> list = new ArrayList<Villages>();
for (int j = 0; j < sheet.getLastRowNum() + 1; j++) {
XSSFRow row = sheet.getRow(j);
Villages villages = new Villages();
if (row != null){
for (int i = 0; i < 6; i++){
if (i==1){
villages.setName(row.getCell(i).toString());
}else {
BigDecimal one = new BigDecimal(row.getCell(i).toString());
String oneInt=one.setScale(0,BigDecimal.ROUND_HALF_UP).toPlainString();
if (i==0){
villages.setCode(oneInt);
}
if (i==2){
villages.setStreetCode(Integer.valueOf(oneInt));
}
if (i==3) {
villages.setProvinceCode(Integer.valueOf(oneInt));
}
if (i==4) {
villages.setCityCode(Integer.valueOf(oneInt));
}
if (i==5) {
villages.setAreaCode(Integer.valueOf(oneInt));
}
}
}
}
list.add(villages);
}
return list;
}
//四级目录
public static List<Streets> testExcelTwo() throws Exception {
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(new File("E:\\admin\\streets.xls")));
HSSFSheet sheet = sheet = workbook.getSheetAt(0);
List<Streets> list = new ArrayList<Streets>();
for (int j = 0; j < sheet.getLastRowNum() + 1; j++) {
HSSFRow row = sheet.getRow(j);
Streets streets = new Streets();
if (row != null){
for (int i = 0; i < 5; i++){
if (i==1){
streets.setName(row.getCell(i).toString());
}else {
BigDecimal one = new BigDecimal(row.getCell(i).toString());
String oneInt=one.setScale(0,BigDecimal.ROUND_HALF_UP).toPlainString();
if (i==0){
streets.setCode(Integer.valueOf(oneInt));
}
if (i==2){
streets.setAreaCode(Integer.valueOf(oneInt));
}
if (i==3) {
streets.setProvinceCode(Integer.valueOf(oneInt));
}
if (i==4) {
streets.setCityCode(Integer.valueOf(oneInt));
}
}
}
}
list.add(streets);
}
return list;
}
//三级目录
public static List<Areas> testExcelThree() throws Exception {
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(new File("E:\\admin\\areas.xls")));
HSSFSheet sheet = sheet = workbook.getSheetAt(0);
List<Areas> list = new ArrayList<Areas>();
for (int j = 0; j < sheet.getLastRowNum() + 1; j++) {
HSSFRow row = sheet.getRow(j);
Areas areas = new Areas();
if (row != null){
for (int i = 0; i < 4; i++){
if (i==1){
areas.setName(row.getCell(i).toString());
}else {
BigDecimal one = new BigDecimal(row.getCell(i).toString());
String oneInt=one.setScale(0,BigDecimal.ROUND_HALF_UP).toPlainString();
if (i==0){
areas.setCode(Integer.valueOf(oneInt));
}
if (i==2){
areas.setCityCode(Integer.valueOf(oneInt));
}
if (i==3) {
areas.setProvinceCode(Integer.valueOf(oneInt));
}
}
}
}
list.add(areas);
}
return list;
}
//二级目录
public static List<Cities> testExcelFour() throws Exception {
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(new File("E:\\admin\\cities.xls")));
HSSFSheet sheet = sheet = workbook.getSheetAt(0);
List<Cities> list = new ArrayList<Cities>();
for (int j = 0; j < sheet.getLastRowNum() + 1; j++) {
HSSFRow row = sheet.getRow(j);
Cities cities = new Cities();
if (row != null){
for (int i = 0; i < 3; i++){
if (i==1){
cities.setName(row.getCell(i).toString());
}else {
BigDecimal one = new BigDecimal(row.getCell(i).toString());
String oneInt=one.setScale(0,BigDecimal.ROUND_HALF_UP).toPlainString();
if (i==0){
cities.setCode(Integer.valueOf(oneInt));
}
if (i==2){
cities.setProvinceCode(Integer.valueOf(oneInt));
}
}
}
}
list.add(cities);
}
return list;
}
//一级目录
public static List<Provinces> testExcelFive() throws Exception {
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(new File("E:\\admin\\provinces.xls")));
HSSFSheet sheet = sheet = workbook.getSheetAt(0);
List<Provinces> list = new ArrayList<Provinces>();
for (int j = 0; j < sheet.getLastRowNum() + 1; j++) {
HSSFRow row = sheet.getRow(j);
Provinces provinces = new Provinces();
if (row != null){
for (int i = 0; i < 2; i++){
if (i==1){
provinces.setName(row.getCell(i).toString());
}else {
BigDecimal one = new BigDecimal(row.getCell(i).toString());
String oneInt=one.setScale(0,BigDecimal.ROUND_HALF_UP).toPlainString();
provinces.setCode(Integer.valueOf(oneInt));
}
}
}
list.add(provinces);
}
return list;
}
//一级目录
public static void main(String[] args) throws Exception {
List<Provinces> list = testExcelFive();
String sqlPre="insert into es_regions (id,parent_id,region_path,region_grade,local_name,zipcode,cod) values ";
StringBuffer ontStr = new StringBuffer(sqlPre);
File writeName = new File("E:\\admin\\test01.txt");
writeName.createNewFile();
FileWriter writer = new FileWriter(writeName);
BufferedWriter out = new BufferedWriter(writer);
out.write(String.valueOf(ontStr));
out.flush();
for (int i=0; i<list.size();i++){
StringBuffer sb = new StringBuffer();
sb.append("("+list.get(i).getCode()+",");
sb.append("0"+",");
sb.append("\""+","+list.get(i).getCode()+",\""+",");
sb.append("1"+",");
sb.append("\""+list.get(i).getName()+"\""+",");
sb.append("\""+"null"+"\""+",");
sb.append("1"+"),");
out.write(String.valueOf(sb));
out.write("\r\n");
out.flush();
}
}
//二级目录
public static void main(String[] args) throws Exception {
List<Cities> list = testExcelFour();
String sqlPre="insert into es_regions (id,parent_id,region_path,region_grade,local_name,zipcode,cod) values ";
StringBuffer ontStr = new StringBuffer(sqlPre);
File writeName = new File("E:\\admin\\test02.txt");
writeName.createNewFile();
FileWriter writer = new FileWriter(writeName);
BufferedWriter out = new BufferedWriter(writer);
out.write(String.valueOf(ontStr));
out.flush();
for (int i=0; i<list.size();i++){
StringBuffer sb = new StringBuffer();
sb.append("("+list.get(i).getCode()+",");
sb.append(list.get(i).getProvinceCode()+",");
sb.append("\""+","+list.get(i).getProvinceCode()+","+list.get(i).getCode()+",\""+",");
sb.append("2"+",");
sb.append("\""+list.get(i).getName()+"\""+",");
sb.append("\""+"null"+"\""+",");
sb.append("1"+"),");
out.write(String.valueOf(sb));
out.write("\r\n");
out.flush();
}
}
//三级目录
public static void main(String[] args) throws Exception {
List<Areas> list = testExcelThree();
String sqlPre="insert into es_regions (id,parent_id,region_path,region_grade,local_name,zipcode,cod) values ";
StringBuffer ontStr = new StringBuffer(sqlPre);
File writeName = new File("E:\\admin\\test03.txt");
writeName.createNewFile();
FileWriter writer = new FileWriter(writeName);
BufferedWriter out = new BufferedWriter(writer);
out.write(String.valueOf(ontStr));
out.flush();
for (int i=0; i<list.size();i++){
StringBuffer sb = new StringBuffer();
sb.append("("+list.get(i).getCode()+",");
sb.append(list.get(i).getCityCode()+",");
sb.append("\""+","+list.get(i).getProvinceCode()+","+list.get(i).getCityCode()+","+list.get(i).getCode()+",\""+",");
sb.append("3"+",");
sb.append("\""+list.get(i).getName()+"\""+",");
sb.append("\""+"null"+"\""+",");
sb.append("1"+"),");
out.write(String.valueOf(sb));
out.write("\r\n");
out.flush();
}
}
//四级目录
public static void main(String[] args) throws Exception {
List<Streets> list = testExcelTwo();
String sqlPre="insert into es_regions (id,parent_id,region_path,region_grade,local_name,zipcode,cod) values ";
StringBuffer ontStr = new StringBuffer(sqlPre);
File writeName = new File("E:\\admin\\test04.txt");
writeName.createNewFile();
FileWriter writer = new FileWriter(writeName);
BufferedWriter out = new BufferedWriter(writer);
out.write(String.valueOf(ontStr));
out.flush();
for (int i=0; i<list.size();i++){
StringBuffer sb = new StringBuffer();
sb.append("("+list.get(i).getCode()+",");
sb.append(list.get(i).getAreaCode()+",");
sb.append("\""+","+list.get(i).getProvinceCode()+","+list.get(i).getCityCode()+","+list.get(i).getAreaCode()+","+list.get(i).getCode()+",\""+",");
sb.append("4"+",");
sb.append("\""+list.get(i).getName()+"\""+",");
sb.append("\""+"null"+"\""+",");
sb.append("1"+"),");
out.write(String.valueOf(sb));
out.write("\r\n");
out.flush();
}
}
//五级目录
public static void main(String[] args) throws Exception {
List<Villages> list = testExcelOne();
String sqlPre="insert into es_regions values ";
StringBuffer ontStr = new StringBuffer(sqlPre);
File writeName = new File("E:\\admin\\test05.txt");
writeName.createNewFile();
FileWriter writer = new FileWriter(writeName);
BufferedWriter out = new BufferedWriter(writer);
for (int i=0; i<list.size();i++){
StringBuffer sb = new StringBuffer(sqlPre);
sb.append("("+list.get(i).getCode()+",");
sb.append(list.get(i).getStreetCode()+",");
sb.append("\""+","+list.get(i).getProvinceCode()+","+list.get(i).getCityCode()+","+list.get(i).getAreaCode()+","+list.get(i).getStreetCode()+","+list.get(i).getCode()+",\""+",");
sb.append("5"+",");
sb.append("\""+list.get(i).getName()+"\""+",");
sb.append("\""+"null"+"\""+",");
sb.append("1"+");");
out.write(String.valueOf(sb));
out.write("\r\n");
out.flush();
}
}
//provinces一级目录省份
public class Provinces implements Serializable {
private Integer code;
private String name;
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
//Cities 二级目录市级
public class Cities implements Serializable {
private Integer code;
private String name;
private Integer provinceCode;
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getProvinceCode() {
return provinceCode;
}
public void setProvinceCode(Integer provinceCode) {
this.provinceCode = provinceCode;
}
}
//Areas 三级目录区级
public class Areas implements Serializable {
private Integer code;
private String name;
private Integer cityCode;
private Integer provinceCode;
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getCityCode() {
return cityCode;
}
public void setCityCode(Integer cityCode) {
this.cityCode = cityCode;
}
public Integer getProvinceCode() {
return provinceCode;
}
public void setProvinceCode(Integer provinceCode) {
this.provinceCode = provinceCode;
}
}
//Streets 四级目录镇级
public class Streets implements Serializable {
private Integer code;
private String name;
private Integer areaCode;
private Integer provinceCode;
private Integer cityCode;
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAreaCode() {
return areaCode;
}
public void setAreaCode(Integer areaCode) {
this.areaCode = areaCode;
}
public Integer getProvinceCode() {
return provinceCode;
}
public void setProvinceCode(Integer provinceCode) {
this.provinceCode = provinceCode;
}
public Integer getCityCode() {
return cityCode;
}
public void setCityCode(Integer cityCode) {
this.cityCode = cityCode;
}
}
//五级目录街道
public class Villages implements Serializable {
private String code;
private String name;
private Integer streetCode;
private Integer provinceCode;
private Integer cityCode;
private Integer areaCode;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getStreetCode() {
return streetCode;
}
public void setStreetCode(Integer streetCode) {
this.streetCode = streetCode;
}
public Integer getProvinceCode() {
return provinceCode;
}
public void setProvinceCode(Integer provinceCode) {
this.provinceCode = provinceCode;
}
public Integer getCityCode() {
return cityCode;
}
public void setCityCode(Integer cityCode) {
this.cityCode = cityCode;
}
public Integer getAreaCode() {
return areaCode;
}
public void setAreaCode(Integer areaCode) {
this.areaCode = areaCode;
}
}
【注】:POI所需依赖包
<dependency>
<groupId>xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.3.0</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-examples</artifactId>
<version>3.9</version>
</dependency>
表结构: