Извините, чтобы немного отступить от вашего вопроса.Как уже упоминалось выше, лучшие решения - это то, что у вас есть сейчас, храните их в базе данных.Будет много проблем, связанных с использованием только файлов XML для хранения и поддержки всей этой информации (и ваше приложение будет работать намного медленнее и ограничено в запросах, которые вы можете выполнять).
Если я правильно понял, вы рассматриваете XMLпотому что вы хотите, чтобы приложение было полностью автономным.Если это так, я предлагаю другой подход.Попробуйте другой движок базы данных, например SQLite3 или H2.Вы можете просто добавить jar-файл в свое приложение, и если вы немного прочтете документацию, вы сможете легко поддерживать базу данных в виде простого файла, без установки.SQLite3 в настоящее время используется в большинстве веб-фреймворков, таких как Django, RoR и т. Д., Как готовая база данных , так что вы можете начать реализацию вне ее.
Есть и положительная сторона вашей текущей логикивероятно, будет работать "как есть", поскольку обе эти базы данных поддерживают стандартный SQL.
Думаешь, это решит твою проблему?
С наилучшими пожеланиями, Педро