Applications often consist of similar but different object models, where the data in two models may be similar but the structure and concerns of the models are different. Object mapping makes it easy to convert one model to another, allowing separate models to remain segregated.
The goal of ModelMapper is to make object mapping easy, by automatically determining how one object model maps to another, based on conventions, in the same way that a human would - while providing a simple, refactoring-safe API for handling specific use cases.
ModelMapper analyzes your object model to intelligently determine how data should be mapped. There's no manual mapping needed. ModelMapper does most of the work for you, automatically projecting and flattening complex models.
ModelMapper provides a simple, fluent mapping API for handling special use cases. The API is type-safe and refactoring-safe, using actual code, rather than string references, to map properties and values.
ModelMapper uses conventions to determine how properties and values are mapped to each other. Users can create custom conventions, or use one of the supplied conventions.
ModelMapper supports integration with any type of data model. From JavaBeans and JSON trees to database records, ModelMapper does the heavy lifting for you.