如何解决杰克逊objectMapper与其他人之间的区别
我找不到关于杰克逊的ObjectMapper与其他映射器(例如dozer / mapStruct / modelMapping / etc)之间的区别的任何解释。所有文章都比较dozer / mapStruct / modelMapping,但它们忽略了ObjectMapper。我不明白怎么了?是同一个映射器吗?
解决方法
Dozer,MapStruct和ModelMapping是Java Bean to Java Bean
的映射器框架,它们递归地将数据从一个对象复制到另一个对象,逐个属性地逐个字段复制。
另一方面,ObjectMapper提供了与基本POJO或与通用JSON
之间进行读写JSON Tree Model
的功能。 ObjectMapper
还有一些其他功能,例如转换对象(请参见convertValue方法),但这不是创建此类的主要原因。
因此,如果要在两个不同模型之间实现复杂的映射,则应使用映射器。如果要将模型序列化为JSON
或从有效载荷JSON
反序列化模型,则必须使用Jackson中的ObjectMapper
。
Jackson库-主要涉及将对象/实体转换为JSON并返回。
ModelMapper / MapStruct-有关将一个实体映射到另一个实体,例如将一个实体映射到其DTO。由于不同实体的大小和复杂性,该操作可能会变得非常粗糙,因此我们需要这些库来简化工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。