Importar planilha Excel para banco SqlServer usando POI

3 respostas
exceljavasqlserver
E

Boa tarde, alguem sabe como importar uma planilha Excel para um banco utilizando o org.apache.poi ?

3 Respostas

K

Veja se isso pode te ajudar…

http://www.devmedia.com.br/apache-poi-manipulando-documentos-em-java/31778
http://www.frameworksystem.com/geracao-de-excel-em-java-utilizando-apache-poi/

E

obrigado, vou ler o primeiro link e verificar como usar, o segundo link eu não preciso pois ja consigo exportar, mas como não compreendi o codigo estou nessa duvida do import.

E

Não consegui muita coisa :sweat:

estou fazendo com um codigo que vi na net mas da erro durante a execução

public class ConectaExcel {
Connection conect = null;

public Connection Conectar(){
    try{
       Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
       conect = DriverManager.getConnection("jdbc:sqlserver://xxx.xxx.xx.xx:xxxx;databaseName=XXXX", "usuario", "senha");
        JOptionPane.showMessageDialog(null, "Conectado . . . . . Ok");
    }catch(Exception e){
        JOptionPane.showMessageDialog(null,e.getMessage());
    }
    return conect;
}
public Connection Desconectar(){
    try{
      
       conect.close();
        JOptionPane.showMessageDialog(null, "Desconectado . . . . . Ok");
    }catch(SQLException ex){
        JOptionPane.showMessageDialog(null,ex.getMessage());
    }
    conect=null;
    return conect;
}

}

segunda classe

private void ImportarExcel(String arquivoDestino) {

int contador = 1;

try {

Workbook arquivoExcel = Workbook.getWorkbook(new File(arquivoDestino));

for (int hojas = 0; hojas < arquivoExcel.getNumberOfSheets(); hojas++) {

Sheet hoja = arquivoExcel.getSheet(hojas);

int numColumnas = hoja.getColumns();

int numFilas = hoja.getRows();

String dato;

for (int fila = 1; fila < numFilas; fila++) {

for (int coluna = 2; coluna < numColumnas; coluna++) {

dato = hoja.getCell(coluna, fila).getContents();

switch (contador) {

case 1:

PROTOCOLO = dato;

contador++;

break;
}
                }
                ConectaExcel CE = new ConectaExcel();
                Connection cn = CE.Conectar();
                String sentencia = "INSERT INTO XXXX(`PROTOCOLO`) VALUES ('" + PROTOCOLO + "')";
                PreparedStatement pst = cn.prepareStatement(sentencia);
                pst.executeUpdate();
                CE.Desconectar();
            }

        }
    } catch (Exception ioe) {
        ioe.printStackTrace();
    }
}
private void miIMActionPerformed(java.awt.event.ActionEvent evt) {

Principal P = new Principal();

P.ImportarExcel(“C:\Users\evt.xlsx);

}
Criado 20 de outubro de 2016
Ultima resposta 25 de out. de 2016
Respostas 3
Participantes 2