Ajuda salvar jfilechooser campo blob

2 respostas
W
Gostaria de salvar um arquivo que foi selecionado num Jfilechooser em um campo blob no banco de dados ele só fica carregando, mas quando fecho o Jframe e verifico no banco de dados ele está salvo alguem poderia ajudar? Segue código
public class NewJFrame extends javax.swing.JFrame {    
    public NewJFrame() {
        initComponents();          
    }
    String caminho = null; 
    private void btnCarregarActionPerformed(java.awt.event.ActionEvent evt) {                                         
                jFileChooser1.setFileFilter(new FileNameExtensionFilter("Documentos pdf","pdf"));  
                jFileChooser1.setAcceptAllFileFilterUsed(false); 
        
                int state = jFileChooser1.showOpenDialog(null);
                File file = jFileChooser1.getSelectedFile();
                caminho = file.getPath();
                               
                if (file != null && state == JFileChooser.APPROVE_OPTION) {
                    JOptionPane.showMessageDialog(null, file.getPath());
               } else if (state == JFileChooser.CANCEL_OPTION) {
                    JOptionPane.showMessageDialog(null, "Cancelado");
                }
                 
    }                                        
    private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {                                         
           try {
                File inFile = new File(caminho);  
                FileInputStream io = new FileInputStream(inFile);  
                PreparedStatement psmnt = Conexao.obterCon().prepareStatement("INSERT  INTO 2012doc (documento) VALUES  (?)");           
                psmnt.setBinaryStream(1,(InputStream)io,(int)inFile.length());  
                psmnt.execute();      
               
        } catch (Exception e) {
            Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, e);
        }
            

    }

2 Respostas

ViniGodoy

Você deveria passar this nos parâmetros dos métodos showOpenDialog e showMessageDialog. Aquele parâmetro deve conter a janela que abriu o Dialog e, no seu caso, é o JFrame. Só se passa null ali em aplicação daquelas de faculdade, que se faz no primeiro ano, onde você usa os dialogs para substituir o Scanner ao ler e escrever no console.

Essa sua primeira frase ficou sem pé nem cabeça. Dá a impressão que você começou a escrever sobre uma coisa, mas terminou escrevendo sobre outra:

O que você quer dizer com “ele só fica carregando”? Ele quem, o arquivo, o campo blog ou o banco? E como você chegou a conclusão que ele “fica carregando”? E carregando o que?

W

consegui resolver, valeu.

Criado 18 de outubro de 2012
Ultima resposta 18 de out. de 2012
Respostas 2
Participantes 2