【问题标题】:Are there any IntelliJ features to map values between two similar objects?是否有任何 IntelliJ 功能可以在两个相似对象之间映射值?
【发布时间】:2013-01-24 06:51:43
【问题描述】:

我最近一直在对 SOAP 服务进行大量集成。假设我从 SOAP 服务中获取此对象:

public class ObjectA{
  private String someString;
  private Integer someInteger;
}

对于这个对象,我想创建自己的表示“ObjectB”,它基本上是相同的,但我不想在我的集成工件之外从 WSDL 公开对象。

然后我在 ObjectA 和 ObjectB 之间进行映射。但这需要大量的手动工作,尤其是在对象有很多字段的情况下。 IntelliJ 中是否有任何智能方法可以在两个对象之间生成映射?

谢谢

【问题讨论】:

    标签: java soap intellij-idea integration pojo


    【解决方案1】:

    您可以使用 Dozer 框架,它是一个 Object-to-Obejct 映射器。

    默认情况下,它将按约定映射,但可以使用映射文件覆盖/自定义。

    详情请看:http://dozer.sourceforge.net/

    我以前使用它来将特定于用例的服务负载对象映射到可重用的域对象上。

    编辑:

    MapStruct 是一个更现代的映射框架。它使用编译时生成:

    【讨论】:

    • 速度很慢,所以除非您知道速度不会成为问题,否则请找到更好的方法或手动完成。
    猜你喜欢
    • 2017-01-27
    • 1970-01-01
    • 1970-01-01
    • 2012-12-25
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-19
    相关资源
    最近更新 更多