Galera, tenho uma classe que possui um atributo byte[].
Preciso converter uma imagem pra um array de bytes e gravar no campo do MySQL que tá como Medium Blob.
O que há de errado com esse código:
/**
* Test of insertImagem method, of class ImagemDAO.
*/
@Test
public void testInsertImagem() throws Exception {
System.out.println("insertImagem");
Imagem i = new Imagem();
FileInputStream f = new FileInputStream(new File("C:\Documents and Settings\Administrator\Desktop\imagem.png"));
byte[] b = new byte[1024];
f.read(b);
i.setBinarios(b);
ImagemDAO.insertImagem(i);
// TODO review the generated test code and remove the default call to fail.
//fail("The test case is a prototype.");
}
Pois ele salva os bytes no banco incorretamente.
O EMS do MySQL que tenho aqui permite visualizar imagens salvas em campos BLOB e ele diz que o formato está incorreto.
Quando copio o conteúdo salvo no banco, jogo pra um txt e renomeio como .png nem o windows reconhece a imagem.
Há alguma outra forma de ler esses bytes??
