xml报文加签名,也就是往xml报文里面多加一个节点,实质就是追加一个参数放进进去。 除了加签的用途,也可以加其他参数。
package xmlTest;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
/**
* xml追加节点
*
* @author yulisao
* @createDate 2020年6月22日
*/
public class AddXmlSign {
public static void main(String[] args) {
StringBuffer xmlParam = new StringBuffer("<?xml version=\"1.0\" encoding=\"GBK\"?>");
xmlParam.append("<root>");
xmlParam.append("<user_id>23</user_id>");
xmlParam.append("<user_name>yulisao</user_name>");
xmlParam.append("<age>18</age>");
xmlParam.append("</root>");
try {
String reqDate = addSignToreqDate(xmlParam.toString(), "1234567");
System.err.println(reqDate);
} catch (DocumentException e) {
e.printStackTrace();
}
}
private static String addSignToreqDate(String reqDate , String sign) throws DocumentException {
Document document = DocumentHelper.parseText(reqDate);
Element root = document.getRootElement();
Element signElement = root.element("sign");
if(signElement==null){
signElement = root.addElement("sign");
}
signElement.setText(sign);
reqDate = root.asXML();
return reqDate;
}
}
打印结果
<root><user_id>23</user_id><user_name>yulisao</user_name><age>18</age><sign>1234567</sign></root>