If you have a few years of experience in the Java ecosystem and you'd like to share that with the community, have a look at our Contribution Guidelines.
Partner – JPA Buddy – NPI – expanded (tag = JPA)

The right tools can and will save a lot of time. As long as you are using Hibernate and IntelliJ IDEA you can boost your coding speed and quality with JPA Buddy. It will help in a lot of the day-to-day work:
- Creating JPA entities that follow best practices for efficient mapping
- Creating DTOs from entities and MapStruct mappers using convenient visual tools
- Generating entities from the existing database or Swagger-generated POJOs
- Visually composing methods for Spring Data JPA repositories
- Generating differential SQL to update your schema in accordance with your changes in entities
- Autogenerating Flyway migrations and Liquibase changelogs comparing entities with the database or two databases
- … and a lot more
Simply put, you'll learn and use the best practices of Hibernate and surrounding technology and become a lot more!
Definitely visit the JPA Buddy site to see its features in action closer.
Partner – MongoDB – NPI – expanded (tag = MongoDB)

You can explore MongoDB through their free forever cluster - Atlas.
Java Top
Get started with Spring 5 and Spring Boot 2, through the Learn Spring course:
> CHECK OUT THE COURSE
1. Overview
This is a guide to working with XML in Java.
We'll go over the most common Java XML processing libraries – for both parsing and binding.
2. DOM Parsers
Simply put, a DOM parser works on the entire XML document, loads it into memory and constructs a tree representation of the document.
2.1. Useful Resources
- Working with XML Files in Java Using DOM Parsing
- Write an org.w3.dom.Document to a File
- Pretty-Print XML in Java
- Intro to XPath with Java
- Modifying an XML Attribute in Java using dom4j
3. SAX Parser
A SAX parser is an event-based parser – it parses the XML document using callbacks without loading the whole document into memory.
3.1. Useful Resources
4. StAX Parser
A StAX Parser is median between DOM and SAX parser.
4.1. Useful Resources
5. JAXB
JAXB – Java Architecture for XML Binding – is used to convert objects from/to XML.
JAXB is a part of the Java SE platform and one of the APIs in Jakarta EE.
5.1. Useful Resources
6. XStream
XStream is a simple library to serialize objects to/from XML.
6.1. Useful Resources
- XStream User Guide: Converting XML to Objects
- XStream User Guide: Converting Objects to XML
- Remote Code Execution with XStream
7. Jackson XML
Jackson XML is an extension of the Jackson JSON processor for reading and writing XML encoded data.
Jackson XML is an extension of the Jackson JSON processor for reading and writing XML encoded data.
7.1. Useful Resources
- Official Website
- Github
- Jackson XML databind Wiki
- Jackson XML annotations
- XML Serialization and Deserialization with Jackson
- Convert XML to JSON Using Jackson
8. Apache CXF Aegis
Aegis is a data binding or a subsystem that can map between Java objects and XML documents described by XML schemas.
8.1. Useful Resources
9. JiBX
JiBX is a tool for binding XML data to Java objects. It provides solid performance compared to other common tools such as JAXB.
9.1. Useful Resources
10. XMLUnit 2
XMLUnit 2.x is a powerful library that helps us test and verify XML content, and comes in particularly handy when we know exactly what that XML should contain.
10.1. Useful Resources
11. Conclusion
This was a quick intro to the XML ecosystem in Java.
Use this as a guide to learn more about doing XML work and getting a high-level view of the Java XML landscape.
We also have a collection of articles on this topic, if you wish to see links to all our XML content in one place.
Java bottom
Get started with Spring 5 and Spring Boot 2, through the Learn Spring course:
>> CHECK OUT THE COURSEGeneric footer banner


Learning to build your API
with Spring?
Download the E-book
with Spring?