Tenho uma aplicação Java Swing que possui uma tela de cadastro.
A tela de cadastro possui um JTextPane com opção de importar imagem, ou seja, além do usuário inserir o texto poderá também inserir imagem na mesma área.
Minha dúvida é, posso persistir os dados desse JTextPane que está incorporando String + Img?
Estou persistindo os textos tranquilamente, entretanto estou tendo dificuldade para gravar/recuperar as imagens.
Pode, o texto você salva numa coluna do tipo varchar e a imagem em uma coluna do tipo blob.
rodriguesabner
@staroski aproveitando… Dizem que é mais indicado salvar o caminho da imagem, ok, mas porquê seria o mais indicado se o caminho é absoluto? Qualquer alteraçãozinha eu posso perder a informação do caminho no sistema
geovane.santos
Não. A string é o texto que o usuário digita no campo e a imagem é a que ele insere no mesmo campo.
Consigo gravar esse jTextArea em uma única coluna no banco de dados, contemplando texto e imagem?
geovane.santos
Certo, mas como eu distingo texto e imagem no banco se na minha view o texto e a imagem estão juntos?
Pensei em gravar o jTextArea (texto + img) em uma única coluna do banco de dados, é possível?
staroski
Quem diz?
Então pra que usar banco de dados se vai guardar as imagens no sistema de arquivos, não faz sentido, pelo menos pra mim.
staroski
Primeiramente, como é que você está inserindo uma imagen no JTextArea?
Até um tempo atrás tinha bastante tópico sobre isso. Acabei pesquisando um pouco sobre isso, e nos fóruns fala que ter a imagem diretamente no banco pode comprometer o desempenho do servidor. Enfim, eu sempre estranhei também…
staroski
Putz, não percebi que você estava usando JTextPane, achei que era JTextArea.
Bom, o JTextPane não tem algo pronto para obter as imagens que foram adicionadas nele.
De repente você poderia estender o JTextPane e sobrescrever o método insertIcon e adicionar a imagem em alguma lista para posteriormente obter na hora de salvar no banco.
LuanFroehlich
Como seria feito então? Quais as opções?
staroski1 like
A primeira resposta que dei neste post:
O texto em uma coluna varchar e a imagem em uma coluna blob.