Impl实现层 package org.cupd.spdb.report.importexcel.dao.impl;import java.io.FileNotFoundException;import java.io.IOException;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache.poi.xssf.usermodel.XSSFCell;import org.apache.poi.xssf.usermodel.XSSFRow;import org.apache.poi.xssf.usermodel.XSSFSheet;import org.apache.poi.xssf.usermodel.XSSFWorkbook;import org.cupd.spdb.report.importexcel.dao.CardBinDao;import com.websurf.spdb.bo.DBConnBOImpl;public class CardBinDaoImpl implements CardBinDao { private static final Log log=LogFactory.getLog(CardBinDaoImpl.class); private static DBConnBOImpl dbConn = new DBConnBOImpl(); PreparedStatement ps = null; Connection conn = null; ResultSet rs = null; private String filePath="E:\\Microsoft Excel.xlsx"; /** * 插入数据 */ public boolean insertDB(){ boolean flag=true; try { //文件流指向excel文件 // FileInputStream fin=new FileInputStream(filePath); XSSFWorkbook workbook=new XSSFWorkbook(filePath);//创建工作薄 XSSFSheet sheet=workbook.getSheetAt(0);//得到工作表 XSSFRow row=null;//对应excel的行 XSSFCell cell=null;//对应excel的列 int totalRow=sheet.getLastRowNum();//得到excel的总记录条数 log.info("得到excel的总记录数"+totalRow); //以下的字段一一对应数据库表的字段 String cardName=""; String cardType=""; String cardBin=""; String cardLength=""; String activityCode=""; String note=""; String sql ="insert into BizCardBin(cardName,cardType,cardBin,cardLength,activityCode,note) values(?,?,?,?,?,?)"; for(int i=2;i<=totalRow;i++){ row=sheet.getRow(i); cell=row.getCell((short) 0); cardName=cell.getStringCellValue().toString(); cell=row.getCell((short) 1); cardType=cell.getStringCellValue().toString(); cell=row.getCell((short) 2); cardBin=cell.getStringCellValue().toString(); cell=row.getCell((short) 3); cardLength=cell.getStringCellValue().toString(); cell=row.getCell((short) 4); activityCode=cell.getStringCellValue().toString(); cell=row.getCell((short) 5); note=cell.getStringCellValue().toString(); conn=dbConn.getConnection(); log.info("获取JDBC连接完成"); ps=conn.prepareStatement(sql); ps.setString(1,cardName); ps.setString(2,cardType); ps.setString(3,cardBin); ps.setString(4,cardLength); ps.setString(5,activityCode); ps.setString(6,note); ps.execute(); System.out.println("preparestatement successful"); } dbConnClose(conn, dbConn); psClose(ps, rs); } catch (FileNotFoundException e) { flag=false; e.printStackTrace(); } catch(IOException ex){ flag=false; ex.printStackTrace(); } catch(SQLException exx){ flag=false; exx.printStackTrace(); } return flag; } public static void main(String[] args) { CardBinDaoImpl e=new CardBinDaoImpl(); e.insertDB(); } /** * 插入数据 只需要传入插入sql即可 * 插入sql的样例:insert into t_department values('D004','金融部'); * @param insert 插入语句 * @return * @throws SQLException */ /*public int insertCardBin(BizCardBin cardBin){ int result=0; PreparedStatement ps = null; Connection conn = null; String sql ="insert into BizCardBin(cardName,cardTyoe,cardBin,cardLength,cardLength,activityCode,note) values(?,?,?,?,?,?,?)"; try { conn=dbConn.getConnection(); log.info("获取JDBC连接完成"); ps = conn.prepareStatement(sql); ps.setString(1, cardBin.getCardName()); ps.setString(2, cardBin.getCardType()); ps.setString(3, cardBin.getCardBin()); ps.setString(4, cardBin.getCardLength()); ps.setString(5, cardBin.getActivityCode()); ps.setString(6, cardBin.getNote()); result = ps.executeUpdate(); } catch (SQLException e) { // TODO Auto-generated catch block log.error("SQL Exception "+ e); e.printStackTrace(); return 0; }finally{ dbConnClose(conn, dbConn); psClose(ps, rs); } return result; } */ public void dbConnClose(Connection conn,DBConnBOImpl dbConn){ if(conn!=null){ dbConn.close(conn); } } private static void psClose(final PreparedStatement preparedStatement, final ResultSet resultSet) { try { if (resultSet != null) { resultSet.close(); } if (preparedStatement != null) { preparedStatement.close(); } } catch (SQLException e) { log.error("error", e); } } }Action层public class CardBinAction extends DispatchAction { public ActionForward showCardBinPage(ActionMapping mapping, ActionForm actionform, HttpServletRequest request, HttpServletResponse response) throws Exception { return mapping.findForward("showCardBinPage"); } private CardBinService CardBinService=new CardBinServiceImpl(); public int insertCardBin() { int result=CardBinService.insertDB(); return result; }