Olá pessoal, ja pesquisei praticamente em todos os fóruns a respeito de salvar imagem no banco, mas infelizmente nao consegui =( to quase desistindo ja, mas resolvi postar aqui pra ver se alguem pode me ajudar. gostaria de converter a imagem em bytes e depois salva-la no banco, porem nao estou conseguindo fazer isso, segue meus codigos:
Esse codigo é para capturar a imagem no desktop do usuario
private void imgMouseClicked(java.awt.event.MouseEvent evt) {
JFileChooser arquivo = new JFileChooser();
FileNameExtensionFilter filtro = new FileNameExtensionFilter("Imagens", "gif", "jpg", "png", "jpeg", "bitmap");
arquivo.setFileFilter(filtro);
arquivo.setAcceptAllFileFilterUsed(false);
arquivo.setFileSelectionMode(JFileChooser.FILES_ONLY);
File file = new File("user.dir");
int salvar = arquivo.showOpenDialog(null);
if(salvar == JFileChooser.APPROVE_OPTION){
ImageIcon image = new ImageIcon(arquivo.getSelectedFile().getPath());
img.setIcon(new ImageIcon(image.getImage().getScaledInstance(img.getWidth(),img.getHeight(),Image.SCALE_DEFAULT)));
O código a seguir é do botao de salvar da imagem:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con;
con = DriverManager.getConnection("jdbc:mysql://127.0.0.1/videoaulajdbc", "root", "96512169");
String query = "INSERT INTO cadastrousuario (imagem) VALUES (?)";
PreparedStatement stmt = con.prepareStatement(query);
stmt.setBytes(1, imagen);
stmt.executeUpdate();
stmt.close();
con.close();
JOptionPane.showMessageDialog(null,"Cadastrado com sucesso");
}catch(ClassNotFoundException ex){
JOptionPane.showMessageDialog(null,"Não foi possivel encontrar a classe");
}catch(SQLException e){
JOptionPane.showMessageDialog(null,"Ocorreu um erro de SQL");
}
Se alguem puder me ajudar serei eternamente grata =)
obrigada pessoal.
