我正在正确评估推土机框架。我想知道是否可以处理以下用例:
课程:
public ClassA {
private Set<ItemA> aItems;
}
public ClassB {
private ClassC cInstance;
}
public ClassC {
private List<ItemB> bItems;
}
推土机映射:
<mapping>
<class-a>ClassA</class-a>
<class-b>ClassB</class-b>
<field>
<a>aItems</a>
<b>cInstance.bItems</b>
</field>
</mapping>
从我到目前为止的测试来看,这似乎不起作用。我特别想知道我应该如何告诉推土机它应该按需生成 ClassB和ClassC 的实例?特别是我是否需要为 ClassB 提供特定的推土机映射,它仅作为“中间”类存在于我的目标模型中?
PS:如果有帮助,我的目标模型由 JAXB 类组成
PPS:我还尝试修改 cInstance 的 setter 方法,如果它为 null,它应该生成一个新的 ClassC 实例 - 不幸的是,没有任何运气。此外,我不想以这种方式修改 setter 方法(但是,也许我可以将其外包给将用于映射的 Factory 类)