用xml格式处理数据:
public class Test
{
public static void main(String[] args)
{
sendXML();
receiveXML();
}
/**
* 调用发送时组织XML形式的参数。
*/
private static void sendXML()
{
// <?xml version="1.0" encoding="UTF-8"?>
// <root>
// <msgtype>CORP</msgtype>
// <starttime>2016-01-01 08:09:07</starttime>
// <endtime>2016-01-31 08:09:07</endtime>
// <token>TOKEN0001</token>
// <companycode>1001</companycode>
// </root>
StringBuilder xmlbuild = new StringBuilder();
xmlbuild.append("<?xml version='1.0' encoding='UTF-8'?> ");
xmlbuild.append("<root>");
xmlbuild.append("<msgtype>CORPMSG</msgtype>");
xmlbuild.append("<starttime>");
xmlbuild.append(DateUtils.curDateTimeStr19());
xmlbuild.append("</starttime>");
xmlbuild.append("<endtime>");
xmlbuild.append(DateUtils.curDateTimeStr19());
xmlbuild.append("</endtime>");
xmlbuild.append("<token>");
xmlbuild.append("temptoken");
xmlbuild.append("</token>");
xmlbuild.append("<companycode>");
xmlbuild.append("tempCompanyCode");
xmlbuild.append("</companycode>");
xmlbuild.append("</root>");
String str = xmlbuild.toString();
System.out.println("send Xml=" + str);
}
/**
* 接收解析XML形式的返回参数。
*/
private static void receiveXML()
{
StringBuilder xml = new StringBuilder();
xml.append("<?xml version='1.0' encoding='UTF-8'?>");
xml.append("<root>");
xml.append("<msgtype>CORP</msgtype>");
xml.append("<starttime>2016-01-01 08:09:07</starttime>");
xml.append("<endtime>2016-01-31 08:09:07</endtime>");
xml.append("<rownumber>TOKEN0001</rownumber>");
xml.append("<meomo></meomo>");
xml.append("<data>");
xml.append("<corp>");
xml.append("<key>1001JHNGHHHHH0987234</key>");
xml.append("<corpcode>1001</corpcode>");
xml.append("<corpname>总部</corpname>");
xml.append("<fatherkey>1001JHNGHHHHH0987234</fatherkey>");
xml.append("</corp>");
xml.append("<corp>");
xml.append("<key>1001JHNGHHHHH0987234</key>");
xml.append("<corpcode>1002</corpcode>");
xml.append("<corpname>分销公司</corpname>");
xml.append("<fatherkey></fatherkey>");
xml.append("</corp>");
xml.append("</data>");
xml.append("</root>");
String xmlBody = xml.toString();// info.get("xmlBody");
try
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(new InputSource(new StringReader(xmlBody)));
NodeList mainList = doc.getElementsByTagName("root");
for (int i = 0; i < mainList.getLength(); i++)
{
Element item = (Element) mainList.item(i);
String msgtype = item.getElementsByTagName("msgtype").item(0).getTextContent();
String starttime = item.getElementsByTagName("starttime").item(0).getTextContent();
String endtime = item.getElementsByTagName("endtime").item(0).getTextContent();
String rownumber = item.getElementsByTagName("rownumber").item(0).getTextContent();
String meomo = item.getElementsByTagName("meomo").item(0).getTextContent();
System.out.println("msgtype=" + msgtype);
System.out.println("starttime=" + starttime);
System.out.println("endtime=" + endtime);
System.out.println("rownumber=" + rownumber);
System.out.println("meomo=" + meomo);
System.out.println();
}
NodeList nodeList = doc.getElementsByTagName("corp");
for (int i = 0; i < nodeList.getLength(); i++)
{
Element item = (Element) nodeList.item(i);
String key = item.getElementsByTagName("key").item(0).getTextContent();
String corpcode = item.getElementsByTagName("corpcode").item(0).getTextContent();
String corpname = item.getElementsByTagName("corpname").item(0).getTextContent();
String fatherkey = item.getElementsByTagName("fatherkey").item(0).getTextContent();
System.out.println("key=" + key);
System.out.println("corpcode=" + corpcode);
System.out.println("corpname=" + corpname);
System.out.println("fatherkey=" + fatherkey);
System.out.println();
}
}
catch (Exception ex)
{
}
}
}