Dozer是Java Bean到Java Bean映射器,它以递归方式将数据从一个对象复制到另一个对象。通常,这些Java Bean将具有不同的复杂类型。
Dozer支持简单属性映射,复杂类型映射,双向映射,隐式显式映射以及递归映射。这包括映射集合属性,这些属性也需要在元素级别进行映射。
Dozer不仅支持属性名称之间的映射,还支持在类型之间自动转换。大多数转换方案都是开箱即用的,但Dozer还允许您通过XML指定自定义转换。
只要您需要使用一种类型的Java Bean并将其映射到另一种类型的Java Bean,就会使用映射器。大多数字段映射可以由Dozer使用反射自动完成,但任何自定义映射都可以以XML格式预先描述。映射是双向的,因此只需要定义类之间的一个关系。如果两个对象上的任何属性名称相同,则甚至不需要为这些字段执行任何显式属性映射。
下图描绘了Dozer可以插入到架构中的一些常见区域。请注意,它通常用于边界(进入/退出)。Dozer将确保数据库中的内部域对象不会流入外部表示层或外部使用者。它还可以帮助将域对象映射到外部API调用,反之亦然。
bean映射器是用Java编写的,并且在很大程度上依赖于用于Java Bean实用程序方法的Jakarta Commons Bean Utils包。
https://blog.csdn.net/whhahyy/article/details/48594657 <==非常详细