这是原始xml
<?xml version="1.0" encoding="GBK"?>
<p>
<s errcode="-1"/>
<s errcode_text="请检查请求信息是否正确!"/>
</p>
要把它转化成为javabean。
刚开始看到这个xml,有点懵圈,咋还有这种样式的报文。百度了一下,原来这个是xml项的属性,是我孤陋寡闻,见识浅薄了。。。(笑哭)
ok,开始转化,使用的是JAXB进行转化
以下是公司项目中使用的代码
public static <T> T convertToJavaBean(String xml, Class<T> cls) {
T t = null;
try {
JAXBContext jaxbContext = JAXBContext.newInstance(cls);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
t = (T) unmarshaller.unmarshal(new StringReader(xml));
} catch (JAXBException e) {
logger.error("xml convert to JavaBean has error." + e.getLocalizedMessage());
throw new ServiceException("xml convert to JavaBean has error.");
}
return t;
}