当它在jaxb中创建objectfactory实例时

时间:2012-09-05 18:01:45

标签: java jaxb unmarshalling

我是Jaxb的新手。我对对象工厂有一个疑问。怀疑是什么时候会在objectfactory类 createXXXBean 方法中创建bean实例,当调用时UnMarshall Process.Check下面的objectfactory.createFruitbean()

  @XmlElementDecl(namespace = "http://as.com/items/types", name = "fruitbean")
    public JAXBElement<Fruittype> createFruitbean(Fruittype value) {

        return new JAXBElement<Fruittype>(_Fruitbean_QNAME, Fruittype.class, null, value);
    }

请帮帮我。

更新: -

我没有对上面的代码进行任何删除。我对ObjectFactory.createFruitBean()有疑问。在下面的代码片段中,它将调用该方法,即ObjectFactory.createFruitbean()

JAXBContext jContext=JAXBContext.newInstance(ObjectFactory.class);
UnMarshaller unmarshall=jContext.CreateMarshaller();
JAXBElement jElement=unmarshall.UnMarshall(XML_PATH);

1 个答案:

答案 0 :(得分:0)

@XmlRegistry
public class ObjectFactory {

   private static final QName FRUIT_QNAME = new QName("...", "...");

   public ObjectFactory() {
   }

   public Fruittype createFruittype() {
      return new Fruittype();
   }

   @XmlElementDecl(namespace = "http://as.com/items/types", name = "fruitbean")
   public JAXBElement<Fruittype> createFruitbean(Fruittype value) {
      return new JAXBElement<Fruittype>(_Fruitbean_QNAME, Fruittype.class, null, value);
   }
}