GitPedia

Jmapper core

Elegance, high performance and robustness all in one java bean mapper

From jmapper-framework·Updated May 8, 2026·View on GitHub·

* [One to Many](https://github.com/jmapper-framework/jmapper-core/wiki/One-To-Many) and [Many to One](https://github.com/jmapper-framework/jmapper-core/wiki/Many-To-One) relationship * [dynamic conversions](https://github.com/jmapper-framework/jmapper-core/wiki/Conversion-examples), whose body adapts to every relationship * [inherited configurations](https://github.com/jmapper-framework/jmapper-core/wiki/Inheritance-examples), you can split the configuration along the hierarchy * and more.. The project is written primarily in Java, distributed under the Apache License 2.0 license, first published in 2015. Key topics include: annotations, api, bytecode, java, jmapper.

Latest release: 1.6.1.CR1
October 19, 2016View Changelog →

JMapper Framework Join the chat at https://gitter.im/jmapper-framework/jmapper-core Donate

Fast as hand-written code with zero compromise.

Artifact information

Maven Central Javadocs Dependency Status

Status

Codacy Badge Build Status

Write the configuration using what you prefer: Annotation, XML or API.

Most relevant features:

especially its use is intuitive

Configuration

Below it is shown the same configuration in the three types allowed

Annotation
java
class Destination{ class Source{ @JMap private String id; private String id; @JMap("sourceField") private String destinationField; private String sourceField; private String other; private String other; // getters and setters... // getters and setters... } }
XML
xml
<jmapper> <class name="it.jmapper.bean.Destination"> <attribute name="id"> <value name="id"/> </attribute> <attribute name="destinationField"> <value name="sourceField"> </attribute> </class> </jmapper>
API
java
JMapperAPI jmapperAPI = new JMapperAPI() .add(mappedClass(Destination.class) .add(attribute("id") .value("id")) .add(attribute("destinationField") .value("sourceField")));

Creation

java
JMapper<Destination, Source> mapper;
Annotation
java
mapper = new JMapper<>(Destination.class, Source.class);
XML
java
mapper = new JMapper<>(Destination.class, Source.class, xml);
API
java
mapper = new JMapper<>(Destination.class, Source.class, jmapperAPI);

Usage

java
Source source = new Source("id", "sourceField", "other"); Destination destination = mapper.getDestination(source);

Result

java
destination ["id", "sourceField", null]

With JMapper we have all the advantages of dynamic mapping with the performance of static code, with 0 memory consumption.<br>
Required java 8+<br>

Would you like to contribute to the development of JMapper?<br>
contact us (jmapper.framework@gmail.com) for more information.<br><br>

Follow us on twitter<br>
<a href="https://twitter.com/jmapper_av"><img src="http://www.teachthought.com/wp-content/uploads/2012/10/twitter-logo-break.png" width="120" height="120" /></a>

Contributors

Showing top 6 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from jmapper-framework/jmapper-core via the GitHub API.Last fetched: 6/23/2026