通过NetBeans进行JAXB - 我可以使用封装吗?

时间:2012-01-19 04:04:40

标签: java xml jaxb xsd

我想在两个JAXB Schema定义的类之间共享一堆内部类。这可能吗?目标是能够将内部类的实例从X类型对象的一个​​Schema定义实例分配给Y类型对象的另一个Schema定义实例。我注意到我正在使用NetBeans,因为我正在使用它们的接口到JAXB工具包来做到这一点。有时会让事情变得混乱......

这是一个更具体的例子(不是我编码的实际例子):

<ford-taurus>
  <ford-specific-tag>324dfs</ford-specific-tag>
  <engine>8 Cylandar</engine>
  <transmission>
     <type>Manual</type>
     <number-of-gears>6</number-of-gears>
  </transmission>
  <color>blue</color>
</ford-taurus>

<bmw-5-series>
  <bmw-specific-tag></bmw-specific-tag>
  <engine></engine>
  <transmission>
     <type></type>
     <number-of-gears></number-of-gears>
  </transmission>
  <color></color>
</bmw-5-series>

然后在Java中,在编制了两个文件后,我想做这样的事情:

myBMW.setTransmission( myFord.getTransmission() );

这有意义吗?可能吗?

由于式提前,

1 个答案:

答案 0 :(得分:1)

如果您在多个模式之间共享类型,那么我建议使用一个XML模式来表示共享类型,并让其他模式导入它。

然后,您可以使用XJC工具中的剧集文件扩展名从导入的可以共享的XML架构生成类。