java中XPATH操作xml,非常便捷

來源:互聯網
上載者:User

標籤:

<?xml version="1.0" encoding="UTF-8"?><MessageList> <item type="1">  <template_id value="p2ItJPj0taTTP4QRXP-z51nYuD3aDNhgvLOusWGY4p0"/>  <topcolor value="#173177"/>  <first value="您好,您的信用卡收到1000元匯款。"  color="#173177"/>  <productType value="帳號類型:信用卡\n尾號:1758 4545" color="#173177"/>  <time value="2013年9月30日 17:58" color="#173177"/>  <type value="收款" color="#173177"/>  <number value="1000元" color="#173177"/>  <remark value="備忘:如有疑問,請撥打諮詢熱線123323。" color="#173177"/> </item> <item type="2">  <template_id value="p2ItJPj0taTTP4QRXP-z51nYuD3aDNhgvLOusWGY4p0"/>  <topcolor value="#173177"/>  <first value="您好,測試type=2的推送。"  color="#173177"/>  <productType value="帳號類型:信用卡\n尾號:1758 4545" color="#173177"/>  <time value="2013年9月30日 17:58" color="#173177"/>  <type value="收款" color="#173177"/>  <number value="1000元" color="#173177"/>  <remark value="備忘:如有疑問,請撥打諮詢熱線123323。" color="#173177"/> </item></MessageList>

/**  * @throws DocumentException  * @Title: getBuySuccessTemplate  * @Date: 2015-3-23  * @Autor: gavin  * @Description: TODO(推送到端購買成功資訊)  * @param @param template_id 設定檔案  * @return void 傳回型別  * @throws  */ private String getTemplateJson(int type) {  try {  StringBuffer templateJson = new StringBuffer();  String path = this.getClass().getResource("/").getPath();  String xmlPath = path + File.separator + "config" + File.separator+ "spring" + File.separator + "send-message.xml";  LogUtils.writeLog(xmlPath);  File xmlFile = new File(xmlPath);  SAXReader reader = new SAXReader();  Document doc = reader.read(xmlFile);  Element childs = (Element) doc.selectSingleNode("//MessageList//item[@type=‘" + type + "‘]");  Element template_idEle = (Element) doc.selectSingleNode("//MessageList//item[@type=‘" + type+ "‘]//template_id");  Element topcolorEle = (Element) doc.selectSingleNode("//MessageList//item[@type=‘" + type+ "‘]//topcolor");  List<Element> childList = childs.elements();  templateJson.append(getTemplateCommon(template_idEle.attributeValue("value"),topcolorEle.attributeValue("value")));  for (Element child : childList) {   if (!child.getName().equals("template_id") && !child.getName().equals("topcolor")) {    templateJson.append("\"" + child.getName() + "\":{\"value\":\""+ child.attributeValue("value") + "\",\"color\":\""+ child.attributeValue("color") + "\"},");   }  }  templateJson.append("}}");  return templateJson.toString().replace(",}}", "}}");  } catch (DocumentException e) {   // TODO Auto-generated catch block   e.printStackTrace();   return null;  } }

 

 

 

java中XPATH操作xml,非常便捷

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.