JAXB всегда требует XSD - PullRequest
       7

JAXB всегда требует XSD

3 голосов
/ 29 марта 2012

http://www.oracle.com/technetwork/articles/javase/index-140168.html#binsch - В этой статье говорится: " JAXB требует, чтобы XML-документ, к которому вы хотите получить доступ, имел схему "

. Вот пример Hello World, использующий привет.xsd

http://jaxb.java.net/tutorial/section_1_3-Hello-World.html#Hello%20World -

А вот пример Hello World без использования xsd.

http://www.mkyong.com/java/jaxb-hello-world-example/

Указывает ли спецификациячто JAXB также работает без xsd, если это так, то насколько оправдан термин «Binding».Я полагаю, что связывание происходит через связывание схемы.

Карификация будет полезна.Спасибо

Ответы [ 3 ]

4 голосов
/ 29 марта 2012

JAXB 2 (JSR-222) Реализации не требуют схемы XML.Вы можете начать с объектной модели.Вам нужно добавить аннотации только там, где вы хотите переопределить поведение отображения по умолчанию.

Примечание: Ссылка, на которую вы ссылались(http://www.oracle.com/technetwork/articles/javase/index-140168.html#binsch) было для JAXB 1 (JSR-31) , для которого требовалась XML-схема. JAXB 2, на который ссылается большинство людей, когда говорят, что JAXB делаетне требуется схема XML.

0 голосов
/ 29 марта 2012

xsd - это просто формальное представление xml, аналогичное классу для объекта. Вы можете иметь совместимый XML без xsd (в этом случае xsd скрыт). Хотя это правда, что мы начинаем с xsd и по большей части генерируем Java-объекты, вы можете делать и другие вещи. 'schemagen' на самом деле позволяет вам создать xsd для данного java-класса. Это просто сказать, что есть несколько отправных точек.

0 голосов
/ 29 марта 2012

класс Customer в учебнике - это не что иное, как объект привязки, который будет сгенерирован из XSD с использованием JAXB Парень избежал этого в своем уроке.

...