Como converter um campo Blob para byte[] e vice versa?

7 respostas
S

Pessoal,

Estou com Oracle e tenho que gravar um campo Blob tem quem informações de impressão digital, como faço para ler um Blob e transforma-lo para um array de byte e vice e versa ?

Aguardo, :?

7 Respostas

R

Utilize o metodo getBytes() :wink:

Rafael

S

Oi Rafael, tudo bem, o getBytes seria para ler e para gravar um array de byte para Blob ?

S

Gente…por favor, alguém sabe e pode me dizer como gravar um array de byte em um campo Blob Oracle ?

R

De onde vc consegue esse array de bytes que deseja gravar no banco? de algum InputStream? pq, caso seja isso, basta vc passar o input stream ao campo blob.

Rafael

S

Na realidade é o seguinte: eu leio através de um aparelho biometrio ( um sensor que le a impressão digital) e ele transforma esta leitura em um conjunto de bytes que fica na memória, assim preciso pega-lo e gravar em um Blob.

Aguardo

R

Bom, simplemente utilize o metodo setBytes(). Veja a documentacao da classe:

http://java.sun.com/j2se/1.4.2/docs/api/java/sql/Blob.html

Agora, seria bom tu dar uma olhada em como vc isso com o teu banco de dados. Blob ate tem uma interface, mas o mysql lida duma maniera, o Oracle de outra (e olha que o oracle tem centenas de bugs com campos blob)…

Uma googleada sobre o assunto vai te salvar horas de debugging :wink:

Rafael

S

Legal já estarei dando uma lida, mas ainda tenho a dúvida, como iria ler estes bytes ? Através de algum inputstreams ?

Criado 29 de julho de 2005
Ultima resposta 29 de jul. de 2005
Respostas 7
Participantes 2