java学习之JAXB解析xml

时间仓促,只记录代码

//实体类
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());
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值