JAXB creating context and marshallers cost

后端 未结 8 2141
情深已故
情深已故 2020-11-28 02:00

The question is a bit theoretical, what is the cost of creating JAXB context, marshaller and unmarshaller?

I\'ve found that my code could benefit from keeping the sa

8条回答
  •  臣服心动
    2020-11-28 02:53

    Even better!! Based on the good solution from the post above, create the context just-once in the constructor, and save it instead of the class.

    Replace the line:

      private Class clazz;
    

    with this one:

      private JAXBContext jc;
    

    And the main constructor with this one:

      private Jaxb(Class clazz)
      {
         this.jc = JAXBContext.newInstance(clazz);
      }
    

    so in the getMarshaller/getUnmarshaller you can remove this line:

      JAXBContext jc = JAXBContext.newInstance(clazz);
    

    This improvement makes, in my case, that processing times drops from 60~70ms to just 5~10ms

提交回复
热议问题