Dozer bean mapping tutorial

Dozer is a framework that maps fields from source bean to target bean.

Practical scenarios to map source bean to target bean?

1) Applications A and B might be having different contracts and objects need to be converted from A to B. For example, Mapping JAXB Objects to Business/Domain Objects.

2) The source bean might have a lots of fields and target bean might require only a few fields.

3) The source bean might be heavily nested and needs to be flattened out as a target bean.

Where does mapping frameworks like Dozer frameworks shine?

Say, you have a deeply nested object graph like a.getB().getC().getD(), doing it via your code can become unsightly with all the null checks. With Dozer, you can elegantly map it with an XML file

Step 1: Create a simple Maven project from a command-line. Just press enter for all the prompts.

Step 2: Import the above “simple-dozer” folder in the file system into eclipse. File –> Import –> “Existing Maven Projects” and then select the “simple-dozer” folder that was created by the “Step 1” from the file system.

Step 3: Open the pom.xml file and add the dependency for Dozer

Step 4: Define the source and target beans.

Source Bean

Target Bean

Step 5: The mapping definition file “dozer-bean-mappings.xml” in the src/main/resources folder.

Step 6: Finally, the class with the main method to create a source bean and map it to the target bean.


As you can see the target properties were null before mapping.

Project structure

Dozer tutorial

Dozer tutorial

Alternative frameworks for bean mapping?

Orika Bean Mapping

800+ Java Interview Q&As Menu

Learn by categories on the go...
Learn by categories such as FAQs – Core Java, Key Area – Low Latency, Core Java – Java 8, JEE – Microservices, Big Data – NoSQL, Architecture – Distributed, Big Data – Spark, etc. Some posts belong to multiple categories.