У меня есть приложение, которое сохраняет свой контекст в XML. В этом приложении есть иерархия классов, которые реализуют общий интерфейс и представляют разные настройки. Например, первый установочный класс может быть сделан из 4 открытых полей с плавающей точкой, другой может быть сделан из единственного HashMap.
Я пытаюсь определить, как лучше всего обрабатывать запись и чтение в XML общим способом. Я много читал на этом сайте, например, о JAXB и XStream, которые могут создавать особые экземпляры классов из XML.
Однако мой вопрос связан с тем фактом, что реальным классом может быть все, что реализует данный интерфейс. Когда вы читаете XML-файл, как бы вы предположили фактический класс для создания экземпляра из XML-данных? Как вы делаете это в своих приложениях?
Я подумал, что мог бы написать имя .class в атрибуте XML, прочитать его и сравнить со всеми возможными именами классов .class, пока не найду совпадение. Есть ли более разумный способ?
Спасибо