package com.accp.function;
import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import com.accp.util.ConnectionManager;
/** * 读取Excel,存入数据库
* * @author zhusujian
* */
public class ReadExcel {
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
public ReadExcel() {
Workbook workBook = null;
conn = ConnectionManager.getConnection();
List list = new ArrayList();
// 直接从本地文件创建Workbook
// 从输入流创建Workbook
try {
InputStream is = new FileInputStream("assrow.xls");
workBook = Workbook.getWorkbook(is);
// 从0开始,第一张工作表
Sheet sheet = workBook.getSheet(0);
// 拿到列,行
int column = sheet.getColumns();
int row = sheet.getRows();
// 拿到每一行,每列的值
for (int i = 1; i < row; i++) {
for (int j = 0; j < column; j++) {
Cell cell = sheet.getCell(j, i);
list.add(cell.getContents());
}
}
String sql = "insert into assrow values(?, ?, ?, ?, ?, ?)";
for (int i = 0; i < list.size() / 6; i++) {
pstmt = (PreparedStatement) conn.prepareStatement(sql);
pstmt.setString(1, (String) list.get(i * 6));
pstmt.setString(2, (String) list.get(i * 6 + 1));
pstmt.setString(3, (String) list.get(i * 6 + 2));
pstmt.setString(4, (String) list.get(i * 6 + 3));
pstmt.setString(5, (String) list.get(i * 6 + 4));
pstmt.setString(6, (String) list.get(i * 6 + 5));
pstmt.executeUpdate(); pstmt.close();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
workBook.close();
} } }