List集合转换成xml格式
java代码:
public String listToXML(List<Log> logs, String regId) {
StringBuffer nodes = new StringBuffer();
if (logs != null && logs.size() > 0) {
nodes.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+"\n");
nodes.append("<Aspt>"+"\n");
nodes.append("\t" + "<Version>1.0</Version>"+"\n");
nodes.append("\t" + "<RegID>" + regId + "</RegID>" + "\n");
nodes.append("\t" + "<Logs>"+"\n");
for (int i = 0; i < logs.size(); i++) {
Log log = logs.get(i);
nodes.append("\t" + "\t" + "<Log>" + "\n");
nodes.append("\t" +"\t" + "\t" + "<node1>" + log.getId() + "</node1>" + "\n");
nodes.append("\t" +"\t" + "\t" + "<node2>" + log.getBeginDate() + "</node2>" + "\n");
nodes.append("\t" +"\t" + "\t" + "<node3>" + log.getEndDate() + "</node3>" + "\n");
nodes.append("\t" +"\t" + "\t" + "<node4>" + log.getTitle() + "</node4>" + "\n");
nodes.append("\t" +"\t" + "\t" + "<node5>" + log.getType() + "</node5>" + "\n");
nodes.append("\t" +"\t" + "\t" + "<node6>" + log.getParams() + "</node6>" + "\n");
nodes.append("\t" + "\t" + "</Log>" + "\n");
}
nodes.append("\t" + "</Logs>"+"\n");
nodes.append("</Aspt>");
}
return nodes.toString();
}
@ResponseBody
@RequestMapping(value = "testXml")
public AjaxJson testXml() {
AjaxJson json = new AjaxJson();
List<Log> list = Lists.newArrayList();
Log log = new Log("001");
log.setTitle("日志1");
log.setBeginDate(new Date());
log.setType("1");
log.setParams("name='zhangsan'");
log.setEndDate(new Date());
list.add(log);
Log log1 = new Log("002");
log.setTitle("日志2");
log1.setBeginDate(new Date());
log1.setParams("name='lisi'");
log1.setType("2");
log.setEndDate(new Date());
list.add(log1);
String s = parseNodeToXML(list, "1");
System.out.println(s);
json.setMsg(s);
return json;
}
控制台输出:
postman测试:
空格和换行会被转译成符号