• Revista PROGRAMAR: Já está disponível a edição #54 da revista programar. Faz já o download aqui!

Las Vegas

Arquivo PDF

4 mensagens neste tópico

Boas comunidade,

Estou a desenvolver uma aplicação Java para desktop e utilizo como IDE o netbeans. A minha questão é a seguinte, tenho de guardar documentos(.doc), é boa pratica guardar na minha base de dados? Se for como faço para extrair esse documento na minha aplicação?

 

Desde já obrigado a todos 

 

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

- é boa prática: não..nem por isso.. depende :)

- se realmente precisas de meter docs na bd.. deves usar uma coluna BLOB

 

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

jsWizard,

 

Desde já obrigado. Na minha bd já tenho uma coluna BLOB e já lá tenho guardado alguns documentos. Agora não consigo extrair o conteúdo.

Sabes de alguma forma?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Viva.

Essa questão é daquelas que não tem propriamente resposta certa.

Depende do projeto, do objetivo, dos acessos, etc..

Guardares o documento na base de dados tem a vantagem de que quando fazes backup ou uma migração ou algo semelhante, garantes que levas todos os teus dados. Por outro lado, a BD vai engordar a cada documento que lá colocas e tem uma carga relativamente grande (em comparação com outros campos de outros tipos) no que toca à obtenção da informação (já não falo do insert porque presumo que haja um significativamente mais leituras do que escritas). Os blobs (assim como outros tipos de dados) são guardados à parte e não na tabela (isto ao nível físico de ficheiros no disco), e tê-los tem um custo adicional.
No teu caso, quando guardas isso na BD vais ter de receber o blob e convertê-lo para um ficheiro binário no disco para que depois o utilizador (ou a aplicação automaticamente) o possa abrir.

Guardares o documento fora da base de dados (tipicamente guardando o caminho num campo na tabela em detrimento de um blob) tem a vantagem de que colocas a BD mais magra, e chutas os acessos aos docs para a aplicação. Esta abordagem tem a desvantagem de que a aplicação de ter acesso ao ficheiro.
Não é o teu caso, mas em aplicações web pode-se ganhar bastante tempo se, por exemplo, o servidor web fizer cache destes ficheiros, despachando o seu acesso sem teres qualquer trabalho aplicacional.
No teu caso, quando necessitas de aceder a um ficheiro basta mandares abrir o mesmo com o comando do sistema operativo e o Word abre o doc automaticamente. Mas é necessário ter em atenção de que todos os postos onde a aplicação está instalada têm de ter acesso físico aos ficheiros. Sendo um doc presumo que estejas em Windows, pelo que esta abordagem necessita que todos os Windows onde a aplicação está instalada tenham acesso a uma pasta partilhada onde se encontram os ficheiros.

Em suma, não há propriamente uma resposta certa.
Já trabalhei com ambas as abordagens, e a decisão varia de acordo com as necessidades e especificidades dos projetos.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora