时间仓促,只记录代码
//实体类
// 解析的方法
//实体类
package com.wx.common;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name = "xml")
@XmlAccessorType(XmlAccessType.FIELD)
public class DeMenuEntity {
@XmlElement
private String ToUserName;
@XmlElement
private String FromUserName;
@XmlElement
private String CreateTime;
@XmlElement
private String MsgType;
@XmlElement
private String Event;
@XmlElement
private String EventKey;
public void setToUserName(String toUserName) {
ToUserName = toUserName;
}
public void setFromUserName(String fromUserName) {
FromUserName = fromUserName;
}
public void setCreateTime(String createTime) {
CreateTime = createTime;
}
public void setMsgType(String msgType) {
MsgType = msgType;
}
public void setEvent(String event) {
Event = event;
}
public void setEventKey(String eventKey) {
EventKey = eventKey;
}
public String getToUserName() {
return ToUserName;
}
public String getFromUserName() {
return FromUserName;
}
public String getCreateTime() {
return CreateTime;
}
public String getMsgType() {
return MsgType;
}
public String getEvent() {
return Event;
}
public String getEventKey() {
return EventKey;
}
}
// 解析的方法
package com.wx.utils;
import java.io.ByteArrayInputStream;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import com.wx.common.DeMenuEntity;
/**
* 解析xml
*
* @author Jay_Lee
*/
public class ParseXmlUtil {
/**
* 解析xml为响应的实体类
*
* @param xml
* @return
* @throws JAXBException
*/
public static Object parseXml(String xml) throws JAXBException {
JAXBContext jc = JAXBContext.newInstance(DeMenuEntity.class);
Unmarshaller u = jc.createUnmarshaller();
return u.unmarshal(new ByteArrayInputStream(xml.getBytes()));
}
public static void main(String[] args) throws JAXBException {
String str = "<xml><ToUserName>user</ToUserName><FromUserName>from uk</FromUserName><CreateTime>123456789</CreateTime><MsgType>test</MsgType><Event>teds</Event><EventKey>111</EventKey></xml>";
DeMenuEntity dme = (DeMenuEntity) parseXml(str);
System.out.println(dme.getCreateTime());
System.out.println(dme.getEvent());
System.out.println(dme.getEventKey());
System.out.println(dme.getFromUserName());
System.out.println(dme.getMsgType());
System.out.println(dme.getToUserName());
}
}