Я хочу перетворити один XML в інший XML. Що буде найкращим способом зробити це. Я шукав у мережі і знайшов, що зможу використовувати XSLT чи JAXB. Чи може хто-небудь допомогти у визначенні того, що стане найкращою практикою.
Відповіді:
4 для відповіді № 1Якщо ви спробуєте це зробити в JAXB, ви будетеперетворення XML у об'єкти Java, а потім назад у XML. Це може бути корисним, якщо ви дійсно хочете скористатися перевагами об'єктів Java, але якщо ви просто хочете XML-to-XML, то безцільно мати щось не в XML-середовищі. Ви не описали трансформацію, але в більшості випадків XSLT буде правильним інструментом для роботи. Єдиний недолік полягає в тому, що існує крива навчання: вона, ймовірно, сильно відрізняється від мови програмування чи сценаріїв, яку ви знайомі, будучи на основі правил та декларативних. Проведіть день, читаючи хорошу книжку, перш ніж починати кодування, і ви набагато більше схильні розуміти, що ви робите.
0 для відповіді № 2
Ви використовуєте JAXB, якщо ви хочете прив'язати класи Java до XML і навпаки. Якщо ви просто хочете перетворити XML -> XML, то XSLT це шлях.
Google для JAXP (Java API для обробки XML), зокрема TransformerFactory-Class, має дати вам гарну початкову точку.
0 для відповіді № 3
Прочитайте це на XSLT в java: www.oreilly.com/catalog/javaxslt/chapter/ch05.html
JAXB використовується для зв'язування XML (наприклад, серіалізація ваших класів у форматі XML).
0 для відповіді № 4
на моєму досвіді xslt може бути дуже повільний якщо файл малий, спробуйте parser dom, інакше це сакс-аналізатор.