A high-performance Java bean mapper offering elegance, robustness, and performance comparable to hand-written code.
JMapper Framework is a Java library for mapping data between Java beans (objects) with high performance and flexibility. It solves the problem of tedious and error-prone manual data copying between objects by providing dynamic mapping that performs as fast as hand-written code.
Java developers working on applications that require frequent data transfer between different object models, such as in persistence layers, DTO conversions, or API integrations.
Developers choose JMapper for its unique combination of dynamic mapping convenience and near-static code performance, with zero memory consumption overhead, supporting multiple configuration methods (annotations, XML, API) for adaptability.
Elegance, high performance and robustness all in one java bean mapper
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Delivers mapping speed comparable to hand-written static code with zero memory overhead, as claimed in the README's philosophy of 'fast as hand-written code.'
Supports annotation-based, XML, and API-driven configuration styles, allowing developers to choose the method that best fits their project structure and preferences.
Capable of mapping one-to-many and many-to-one relationships, which is essential for real-world data models with nested or hierarchical structures.
Enables adaptable conversions that adjust based on mapping contexts, reducing boilerplate code for custom transformations as highlighted in the wiki examples.
Requires Java 8 or higher, excluding legacy systems or projects stuck on older Java versions, which limits adoption in some environments.
With three configuration styles, there can be a steeper learning curve and increased setup time compared to simpler, annotation-only libraries like Lombok's @Builder.
Has a smaller community and fewer out-of-the-box integrations with popular frameworks like Spring or Jakarta EE compared to alternatives such as MapStruct.
JMapper is an open-source alternative to the following products:
MapStruct is a Java annotation processor for generating type-safe and performant mapping code between Java bean types, reducing boilerplate code for object conversions.
Dozer is a Java Bean to Java Bean mapper that recursively copies data from one object to another, commonly used for data transfer objects.