Onde armazenar os dados?

Pessoal preciso fazer uma aplicação que tenha um banco de dados embutido no proprio programa.

Eu nao quero que o usuario final tenha que instalar o Oracle por exemplo.

Como fazer isso?

Existem várias alternativas:

  • Apache Derby (ou JavaDB)
  • HSQLDB
    etc.

Tem a versão lite do Oracle também… chamada Oracle Express:

http://www.oracle.com/technology/products/database/xe/index.html

Se você quiser instalar algo que depende do seu sistema operacional e que não seja em Java, existem várias opções, mas todas dão algum trabalho, e alguns não podem ser distribuídos comercialmente (a licença é apenas para desenvolvedores - eu acho que é o caso do Oracle ou do DB2 Express).

MySQL - disponível para Linux, Windows, Solaris, etc.
PostgreSQL - idem
Microsoft SQL Server Express - apenas para Windows (2000/XP/2003/Vista)
Oracle Express - acho que para Windows e Linux
DB2 Express - acho que para Windows e Linux

E obviamente o “bando de dados” chamado MS Access - não recomendo.

Vlw galera!

Mas acho que vcs nao entenderam a pergunta…

Thingol como eu coloco o JavaDB no meu proprio programa? Eu quero fazer com que o usuario nao precise ter nenhum banco de dados instalado no PC.

A galera tem uma preguiça de procurar.
http://guj.com.br/java.tutorial.artigo.162.1.guj

Se quiser uma ajuda além dessa, procure as apostilas da Caelum que dentro dos exercícios eles mostram como embarcar um banco de dados na sua aplicação.

Aí se a preguiça persistir, podes pesquisar no fórum sobre banco de dados embarcado

Até!

[Adendo]Desculpem a falta de paciência, mesmo com os novatos. Depois que se popularizou os mecanismos de busca, não há desculpa para não fazer uma busca por mais banal que seja. Eu acho comodismo e/ou preguiça não procurar.[/Adendo]

[quote=kratka]Vlw galera!

Mas acho que vcs nao entenderam a pergunta…

Thingol como eu coloco o JavaDB no meu proprio programa? Eu quero fazer com que o usuario nao precise ter nenhum banco de dados instalado no PC.

[/quote]

Mas o JavaDB não exige instalação, ele fica embutido na aplicação mesmo.

Outra alternativa é: usando a versão 6 do Java, a especificação da JDBC 4 está implementada. Sendo assim, você pode usar XML como se fosse um banco de dados, isso deve-se à capacidade (adicionada na versão 4) que a JDBC tem de abstrair os documentos XML como se fossem bancos de dados reais, de modo que a sua persistência será feita em arquivos texto mas a programação será feita transparentemente usando-se os objetos da JDBC clássicos (Connection, ResultSet, etc).