首页 > 解决方案 > 推土机中的继承映射

问题描述

我有这样的层次结构:

Class A{
  private int a;
}
Class B extend A{
  private int b;
}
Class C extend A{
  private int c;
}
Class Prime {
  private int a;
  private A objectA;
}

我对每个类都有 DTO,如下所示:

Class Dto_A{
  private int a;
}
Class Dto_B extend Dto_A{
  private int b;
}
Class Dto_C extend Dto_A{
  private int c;
}
Class Dto_prime {
  private int prime;
  private Dto_A objectA;
  private int b;
}

如果推土机中的 Dto_B 实例,我如何从类Dto_B中映射字段 b?(如下代码:)Dto_primeobjectA

Dto_prime dto_p = new Dto_prime();
Dto_B dto_b = new Dto_B();
if(dto_p.objectA instance of Dto_B)
  dto_p.setB(dto_b.getB());

在推土机中阅读了继承映射并在 XML 中添加了提示,但它对我不起作用并引发异常。

我还尝试了 XML 中的 set-method 和 get-method 并进行如下检查:

if (objectA instance of Dto_B)
   //do something...

但是当我调试它时。objectA不是 none of Class Bor的实例Class C

注意class B:我将 Prime 对象与 Prime 中的as 字段实例保持一致objectA

任何机构有建议?

标签: javamappingdozer

解决方案


推荐阅读