Olá. Estou fazendo um trabalho em Java no qual tenho que ler uma série de arquivos em formato CSV, guardar em memória e logo depois juntar informações desses arquivos, reorganizar e montar novos arquivos no mesmo formato, pegando algumas informações de cada tabela lida inicialmente. Gostaria de uma dica da melhor forma para guardar as informações e depois poder acessar facilmente. Andei estudando o uso de banco de dados relacionais, mas não tenho certeza que se eu fizesse um projeto utilizando, por exemplo, MySQL, rodaria com certeza em outros computadores para a correção automática. Sou novo nesse assunto, então se alguém puder me esclarecer. Obrigado!
O que você quer dizer com isso?
Se seu problema está sendo escolher um banco (MySQL, Postgree, etc…), use o que estiver mais familiarizado, se for um projeto de curto prazo.
Se quer um banco que seja portável (ou seja, dependa de pouco ou nenhuma instalação) e simples de usar, eu recomendaria SQLite.
Abraço.
Então, estava utilizando ArrayLists para guardar os dados de entrada e poder manipulá-los depois, mas não tenho certeza de que seja um bom método. Não sei muito sobre bancos de dados e a matéria em si não é sobre eles, por isso gostaria de saber um método eficiente, simples e com boa portabilidade para poder estudar e aplicar. Seria mesmo SQLite? Os dados de entrada são tabelas com várias linhas, cada uma formando um objeto, e várias colunas, sendo os atributos do objeto. Obrigado pela atenção, um abraço.
Para trabalhar em memória, listas são uma boa opção. Se o conteúdo for pouco, você pode salvar em um arquivo, num formato de fácil leitura como xml ou json.
Um banco de dados é uma opção melhor se precisa das vantagens que ele oferece (como consultas com condicionais). Sugeri o SQLite porque sua aplicação não parece muito grande e porque ele é bem simples de usar, não requer nem instalação.
Abraço.