Estou criando um cadastro de funcionarios e preciso colocar a foto deles qual seria melhor forma de cadastrar essa imagem no banco de dados

Estou criando um cadastro de funcionarios e preciso colocar a foto deles qual seria melhor forma de cadastrar essa imagem no banco de dados

1 curtida

Particularmente , eu não gravaria uma imagem no banco, só infla e fica cada vez maior, opinião minha.
ao invés de gravar o arquivo, grava o caminho da imagem , e exibe a imagem uma label quando for necessário, buscando pelo caminho da imagem. mas se quiser realmente gravar a imagem no banco.
pode usar o typo BLOB. um gosso exemplo:

String INS = "insert into MyPictures(id, name, photo) values (?, ?, ?)";
File file = new File("myPhoto.png");
fis = new FileInputStream(file);
ps = conn.prepareStatement(INSERT_PICTURE);'
ps.setString(1, "001");
ps.setString(2, "name");
ps.setBinaryStream(3, fis, (int) file.length());
ps.executeUpdate();
conn.commit();

2 curtidas

Nunca usei o BANCO para armazenar imagens, mas tenho certeza que vai inflar, ainda mais tratando-se de cadastro de funcionários, o MARCELO está certo.

Cria uma pasta e ALOCA as imagens dos funcionários nesta pasta, daí é só puxar a imagem na LABEL como ele disse, só para visualizar no momento em que puxar o CADASTRO do funcionário.

Vai lhe poupar espaço no banco e acredito que vai manter ele LEVE e RÁPIDO no SELE, INSERT e UPDATE

1 curtida

Em vez de usar um JLabel para exibir a imagem. Recomento usar o JImagePanel, do projeto towel.

1 curtida

Você pode usar qualquer componente que possa “mostrar” uma imagem que esteja gravada em um determinado diretório, e o endereço desta imagem deve estar gravado no BD… Lembre-se que a partir dai você pode até trocar a imagem no diretório, mantendo o mesmo nome, e a alteração vai refletir no seu programa. Fica bem dinâmico… Arquivos de configurações também pode ser utilizados… exige menos que BDs… vai depender do grau de segurança que vc deseja…

1 curtida

Uma ótima ideia, gostei dessa!!!

1 curtida