En mi opinión sería casi obvio que es mejor usar bases de datos, a menos que no sepas manejarlas nada, tienen por lo menos la ventaja de la persistencia, además manejan los datos ya estructurados, y seguramente no tendrías que programar las busquedas.
Recuerda que Java no tiene estructuras, solo clases.
No he manejado bases de datos con Java (solo con visual fox pro), por lo que no podría darte mucha información de como hacerlo.