Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 332151
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 12, 20262026-05-12T09:50:26+00:00 2026-05-12T09:50:26+00:00

Which is the best class in Java to work with XML documents?

  • 0

Which is the best class in Java to work with XML documents?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-12T09:50:27+00:00Added an answer on May 12, 2026 at 9:50 am

    It really depends on what you want to do with the XML document and how big the documents are.

    Roughly, you can categorise XML APIs as:

    • DOM APIs – load the entire document into memory, which limits the size of document you can process, but can then create optimised structures for navigation and transformation
    • Streaming APIs – your application must interpret low level parse events (e.g. start of element, end of element, etc.) but you are not limited by memory. There are two kinds of streaming API – push and pull. Push parsers fire parse events at an object you define and that object must keep track of the current parse state, with a state machine or stack, for example). Pull parsers let your app pull parse events from the parser. This makes it easy to write a recursive descent parser to process the XML content, but then stack size becomes a limit on the size of document you can process.
    • XML Mappers – map XML content to Java objects. There are two main approaches for XML mapping: code-gen or reflection. Code-gen mappers generate Java classes from an XML schema, which means you don’t have to duplicate the schema structure in Java code but does have the disadvantage that your Java code exactly mirrors the schema structure. Also most code generators create NOJO classes that are awkward to work with and have no behaviour of their own. Reflective mappers let you to write Java classes with rich behaviour and then define how they are mapped to/from XML. If you need to conform to a predefined schema, you’ll have to make sure your classes and mapping configuration are correct w.r.t. that schema.

    Some options available are:

    • DOM APIs: The DOM APIs in the standard library are standard (obviously!) and so interoperate with other libraries but they are awful. There are several more convenient DOM-like APIs, such as XOM (my favourite for the same reasons that Adam Batkin gives above) or JDOM. Have a look at a few and decide which API you prefer.
    • Streaming APIs: the standard library contains an implementation of the SAX push parser. The standard pull parser for Java is StAX.
    • Mapping APIs: JAXB is a JSR standard but I prefer XStream because I can more easily separate the mapping configuration from the mapped classes (no need for annotations or XML configuration) and it maps objects to/from other data formats.
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 231k
  • Answers 231k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Use the following function like this: Image('/path/to/original.image', '1/1', '150*', './thumb.jpg');… May 13, 2026 at 2:13 am
  • Editorial Team
    Editorial Team added an answer Check you database schema to see if the field (referenced… May 13, 2026 at 2:13 am
  • Editorial Team
    Editorial Team added an answer I figured out the problem - there was a session… May 13, 2026 at 2:13 am

Related Questions

I've been doing some reading about two (relatively) new concepts in the Javascript language
I've been a Java programmer almost exclusively for the past 8 years or so,
When writing a library or the public API of a module that will be
For some time I've been making a 2d tile based sim game, and it's

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.