В настоящее время я разрабатываю программное обеспечение, в котором пользователь может определить сложную иерархию объектов в качестве параметров. Также эти объекты настроек предоставляют интерфейсы как API для других разработчиков. Теперь я хочу сохранить эти настройки и перезагрузить их.Каков наилучший способ надежного хранения сложной иерархии объектов Java?
В настоящее время я рассматриваю разные способы сделать именно это, но ни одно из моих решений не является «хорошим», на мой взгляд.
Основные цели должны быть:
- Он должен выводить строки, потому что я предпочитаю удобочитаемое конфигурацию по быстрой один.
- Он должен быть надежным, даже если код меняется. Это означает, что он не должен делать магию, но должно быть очевидно, что изменение может сломать уже сохраненную конфигурацию. (Например, как предотвратить, чтобы мой коллега переименовал класс и сломал производство.)
- Хранение и загрузка должны работать с o bject, интерфейсами и генериками.
- Сохраните конфигурацию того, что хранится как можно ниже. Я предпочел бы соглашение по конфигурации.
Я знаю, что многие из вас сталкивались с тем же или подобным вопросом при разработке.
Каково было ваше решение? Какую структуру вы использовали и почему?
Все решения, которые я придумал, либо не зависимы, ни огромные конфигурации, ни код.
Так что я с нетерпением жду возможности получить новые хорошие перспективы по этой теме от всех вас.
Спасибо.
'Ни одно из моих решений не является« хорошим », на мой взгляд, например, например? –
Например. Использование Gson, Сериализация, Написание собственного персистентства Интерфейс, который вручную был реализован, используя аннотации для маркировки и анализа классов ... – StaticBR