Можем ли мы создать класс из XML-файла? - PullRequest
1 голос
/ 06 мая 2010

Можно ли создать класс динамически, читая xml-файл (желательно в java)? если да, пожалуйста, укажите, как это сделать.

В процессе разработки мы создали класс, имеющий 5 атрибутов, все эти атрибуты соответствуют записи в файле XML, теперь, если пользователь добавляет / изменяет запись XML, объект, соответствующий ему, должен изменить автоматически одним из подходов будет генерирование исходного кода перед компиляцией. Есть ли другой способ?

Существует ли какая-либо общая модель для моделирования таких изменений в системе?

Спасибо

Ответы [ 6 ]

4 голосов
/ 06 мая 2010

Если у вас есть XML-схема для вашего XML, есть несколько наборов для этого. Начните с JAX-B.

1 голос
/ 06 мая 2010

Если у вас есть XML-схема (xsd), вы можете передать эту схему в команду JAXB xjc для генерации классов Java. xjc входит в состав Java 6 JDK.

1 голос
/ 06 мая 2010

Если вы сохранили свои атрибуты в HashMap, вы можете просто проанализировать XML и затем установить соответствующие атрибуты.

0 голосов
/ 06 мая 2010

Если вам нужна генерация байт-кода, взгляните на cglib , именно она используется в Hibernate.

Но, возможно, некоторые аннотации также могут удовлетворить ваше требование, как инъекция зависимостей Google Guice.

0 голосов
/ 06 мая 2010

Я думаю, JAX-B может обеспечить такую ​​функциональность.

0 голосов
/ 06 мая 2010

Процесс обычно работает наоборот (т. Е. Определение класса с этими атрибутами и сериализация экземпляра класса в XML)

Если вам действительно нужна такая гибкость, язык сценариев избавит вас от многих проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...