首页 文章

excel java apache poi

提问于
浏览
1

我想使用此代码将Excel数据插入数据库 .

public class Insert {
      public static void main( String [] args ) {
        String fileName="C:\\File.xls";
        Vector dataHolder=read(fileName);
        saveToDatabase(dataHolder);
    }
        public static Vector read(String fileName)    {
        Vector cellVectorHolder = new Vector();
        try{
                FileInputStream myInput = new FileInputStream(fileName);
                POIFSFileSystem myFileSystem = new POIFSFileSystem(myInput);
            HSSFWorkbook myWorkBook = new HSSFWorkbook(myFileSystem);
            HSSFSheet mySheet = myWorkBook.getSheetAt(0);
           Iterator rowIter = mySheet.rowIterator(); 
           while(rowIter.hasNext()){
                  HSSFRow myRow = (HSSFRow) rowIter.next();
                  Iterator cellIter = myRow.cellIterator();
                  Vector cellStoreVector=new Vector();
                  while(cellIter.hasNext()){
                          HSSFCell myCell = (HSSFCell) cellIter.next();
                          cellStoreVector.addElement(myCell);
                  }
                  cellVectorHolder.addElement(cellStoreVector);
          }
        }catch (Exception e){e.printStackTrace(); }
        return cellVectorHolder;
    }
        private static void saveToDatabase(Vector dataHolder) {
        String username="";
                String password="";
                for (int i=0;i<dataHolder.size(); i++){
                   Vector cellStoreVector=(Vector)dataHolder.elementAt(i);
                        for (int j=0; j < cellStoreVector.size();j++){
                                HSSFCell myCell = (HSSFCell)cellStoreVector.elementAt(j);
                                String st = myCell.toString();
                                 username=st.substring(0,1);
                                 password=st.substring(0);
                                                        }
                        try{
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root", "root");
        Statement stat=con.createStatement();
        int k=stat.executeUpdate("insert into login(username,password) value('"+username+"','"+password+"')");
        System.out.println("Data is inserted");
        stat.close();
        con.close();
        }
        catch(Exception e){}
        }
        }
      }

如何在按钮中插入此代码?

1 回答

  • 1

    通常,您必须向按钮添加Action侦听器:

    Button button = new Button("click me");
        button.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // call your logic here
            }
        });
    

相关问题