使用Dom4j来解析xml格式字符串

jsp页面输入的xml格式如下所示:


         <list>
		<item>
			<order_Id>20151103000000101</order_Id>
			<bank_Code>ICBC</bank_Code>
			<cnaps></cnaps>
			<bank_Name>工商银行</bank_Name>
			<branch_Bank_Name>工商银行北京市朝阳支行</branch_Bank_Name>
			<amount>0.01</amount>
			<account_Name>张三</account_Name>
			<account_Number>9558820200001234567</account_Number>
			<province>110000</province>
			<city>110000</city>
			<fee_Type>SOURCE</fee_Type>
			<payee_Email></payee_Email>
			<payee_Mobile></payee_Mobile>
			<urgency>0</urgency>
			<leave_Word></leave_Word>
			<abstractInfo></abstractInfo>
			<remarksInfo></remarksInfo>
		</item>
		<item>
			<order_Id>20151103000000102</order_Id>
			<bank_Code>ICBC</bank_Code>
			<cnaps></cnaps> 
			<bank_Name>工商银行</bank_Name>
			<branch_Bank_Name>工商银行北京市朝阳支行</branch_Bank_Name>
			<amount>0.01</amount>
			<account_Name>李四</account_Name>
			<account_Number>9558820200001234568</account_Number>
			<province>110000</province>
			<city>110000</city>
			<fee_Type>SOURCE</fee_Type>
			<payee_Email></payee_Email>
			<payee_Mobile></payee_Mobile>
          	<span style="white-space:pre">	</span><urgency>0</urgency>
			<leave_Word></leave_Word>
			<abstractInfo></abstractInfo>
			<remarksInfo></remarksInfo>
		</item>
	</list>

对上述代码进行读取:


<span style="white-space:pre">		</span>request.setCharacterEncoding("UTF-8");
		String xml = formatString(request.getParameter("xml"));
		Map<Integer, XMLBean> xmlMap = new HashMap<Integer, XMLBean>();
		//第一步:将请求的数据和商户自己的密钥拼成一个字符串,
		Document document = null;
		try {
			document=DocumentHelper.parseText(xml);
		} catch (DocumentException e) {
		} 
		Element rootEle = document.getRootElement();
		System.out.println("根节点名称:"+rootEle.getName());//获取根节点
		int i=0;
		Iterator iter = rootEle.elementIterator("item"); // 获取根节点下的子节点item
		while(iter.hasNext()){
			XMLBean bean = new XMLBean();
			Element recordEle = (Element) iter.next();
			bean.setOrorder_Id(recordEle.elementTextTrim("order_Id"));
			bean.setBank_Code(recordEle.elementTextTrim("bank_Code"));
			bean.setBank_Name(recordEle.elementTextTrim("bank_Name"));
			bean.setAmount(recordEle.elementTextTrim("amount"));
			bean.setAccount_Name(recordEle.elementTextTrim("account_Name"));
			bean.setAccount_Number(recordEle.elementTextTrim("account_Number"));
			bean.setFee_Type(recordEle.elementTextTrim("fee_Type"));
			bean.setUrgency(recordEle.elementTextTrim("urgency"));
			xmlMap.put(i, bean);
			i++;
		}
		System.out.print(xmlMap.size());

其中设置了和xml标签对应的类:

public class XMLBean {

	String ororder_Id;
	String bank_Code;
	String cnaps;
	String bank_Name;
	String branch_Bank_Name;
	String amount;
	String account_Name;
	String account_Number;
	String account_Type;
	String province;
	String city;
	String fee_Type;
	String payee_Email;
	String urgency;
	String payee_Mobile;
	String leave_Word;
	String abstractInfo;
	String remarksInfo;
	public String getOrorder_Id() {
		return ororder_Id;
	}
	public void setOrorder_Id(String ororder_Id) {
		this.ororder_Id = ororder_Id;
	}
	public String getBank_Code() {
		return bank_Code;
	}
	public void setBank_Code(String bank_Code) {
		this.bank_Code = bank_Code;
	}
	public String getCnaps() {
		return cnaps;
	}
	public void setCnaps(String cnaps) {
		this.cnaps = cnaps;
	}
	public String getBank_Name() {
		return bank_Name;
	}
	public void setBank_Name(String bank_Name) {
		this.bank_Name = bank_Name;
	}
	public String getBranch_Bank_Name() {
		return branch_Bank_Name;
	}
	public void setBranch_Bank_Name(String branch_Bank_Name) {
		this.branch_Bank_Name = branch_Bank_Name;
	}
	public String getAmount() {
		return amount;
	}
	public void setAmount(String amount) {
		this.amount = amount;
	}
	public String getAccount_Name() {
		return account_Name;
	}
	public void setAccount_Name(String account_Name) {
		this.account_Name = account_Name;
	}
	public String getAccount_Number() {
		return account_Number;
	}
	public void setAccount_Number(String account_Number) {
		this.account_Number = account_Number;
	}
	public String getAccount_Type() {
		return account_Type;
	}
	public void setAccount_Type(String account_Type) {
		this.account_Type = account_Type;
	}
	public String getProvince() {
		return province;
	}
	public void setProvince(String province) {
		this.province = province;
	}
	public String getCity() {
		return city;
	}
	public void setCity(String city) {
		this.city = city;
	}
	public String getFee_Type() {
		return fee_Type;
	}
	public void setFee_Type(String fee_Type) {
		this.fee_Type = fee_Type;
	}
	public String getPayee_Email() {
		return payee_Email;
	}
	public void setPayee_Email(String payee_Email) {
		this.payee_Email = payee_Email;
	}
	public String getUrgency() {
		return urgency;
	}
	public void setUrgency(String urgency) {
		this.urgency = urgency;
	}
	public String getPayee_Mobile() {
		return payee_Mobile;
	}
	public void setPayee_Mobile(String payee_Mobile) {
		this.payee_Mobile = payee_Mobile;
	}
	public String getLeave_Word() {
		return leave_Word;
	}
	public void setLeave_Word(String leave_Word) {
		this.leave_Word = leave_Word;
	}
	public String getAbstractInfo() {
		return abstractInfo;
	}
	public void setAbstractInfo(String abstractInfo) {
		this.abstractInfo = abstractInfo;
	}
	public String getRemarksInfo() {
		return remarksInfo;
	}
	public void setRemarksInfo(String remarksInfo) {
		this.remarksInfo = remarksInfo;
	}
	
}












  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值