[英]How to read xml file present in Servlet request
標頭要求
POST http://{URL} HTTP/1.1
Accept: */*
Accept-Language: en-us
Content-Type: text/xml; charset=UTF-8
Accept-Encoding: gzip, deflate
Content-Length: 1049
Connection: Keep-Alive
Pragma: no-cache
<?xml version="1.0"?>
<userID>dummy</userID>
<password>pwd</password>
我有上述請求,該請求發送到doFilter中的ServletRequest中。 我可以通過使用如下的服務API來讀取參數
HttpServletRequest req = (HttpServletRequest) request;
Enumeration<String> params = req.getParameterNames();
如何使用Java中的servlet讀取xml內容以便在該xml中檢索UserID
這就是我使用org.dom4j.io.SAXReader從HTTPServletRequest
將XML讀取到映射中的方法
public static Map<String, String> parseXml(HttpServletRequest request) throws IOException, DocumentException {
Map<String,String> map=new HashMap<String,String>();
InputStream is =request.getInputStream();
SAXReader reader=new SAXReader();
Document document=reader.read(is);
Element root =document.getRootElement();
List<Element> elementList=root.elements();
for(Element e: elementList){
map.put(e.getName(), e.getText());
}
//now your map will have below mapping
//"userID"->"dummy"
//"password"->"pwd"
return map;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.