diff --git a/src/main/java/me/chanjar/weixin/util/xml/XmlTransformer.java b/src/main/java/me/chanjar/weixin/util/xml/XmlTransformer.java index b82161f8..026cc0a5 100644 --- a/src/main/java/me/chanjar/weixin/util/xml/XmlTransformer.java +++ b/src/main/java/me/chanjar/weixin/util/xml/XmlTransformer.java @@ -5,8 +5,6 @@ import java.io.InputStream; import java.io.StringReader; import java.io.StringWriter; import java.io.Writer; -import java.util.HashMap; -import java.util.Map; import javax.xml.bind.*; @@ -17,7 +15,7 @@ import com.sun.xml.bind.marshaller.CharacterEscapeHandler; public class XmlTransformer { - protected static final JAXBContext jaxbContext = initJAXBContext(); + protected static final JAXBContext JAXB_CONTEXT = initJAXBContext(); /** * xml -> pojo @@ -29,16 +27,14 @@ public class XmlTransformer { */ @SuppressWarnings("unchecked") public static T fromXml(Class clazz, String xml) throws JAXBException { - JAXBContext context = jaxbContext; - Unmarshaller um = context.createUnmarshaller(); + Unmarshaller um = JAXB_CONTEXT.createUnmarshaller(); T object = (T) um.unmarshal(new StringReader(xml)); return object; } @SuppressWarnings("unchecked") public static T fromXml(Class clazz, InputStream is) throws JAXBException { - JAXBContext context = jaxbContext; - Unmarshaller um = context.createUnmarshaller(); + Unmarshaller um = JAXB_CONTEXT.createUnmarshaller(); InputSource inputSource = new InputSource(is); inputSource.setEncoding("utf-8"); T object = (T) um.unmarshal(inputSource); @@ -60,14 +56,13 @@ public class XmlTransformer { } public static void toXml(Class clazz, T object, Writer writer) throws JAXBException { - JAXBContext context = jaxbContext; - Marshaller m = context.createMarshaller(); + Marshaller m = JAXB_CONTEXT.createMarshaller(); m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); - m.setProperty(CharacterEscapeHandler.class.getName(), characterUnescapeHandler); + m.setProperty(CharacterEscapeHandler.class.getName(), CHAR_ESCAPE_HANDLER); m.marshal(object, writer); } - protected static CharacterEscapeHandler characterUnescapeHandler = new CharacterUnescapeHandler(); + protected static final CharacterEscapeHandler CHAR_ESCAPE_HANDLER = new CharacterUnescapeHandler(); protected static class CharacterUnescapeHandler implements CharacterEscapeHandler { public void escape(char[] ac, int i, int j, boolean flag, Writer writer) throws IOException {