import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class XmlUtil {
/**
* 新建方法,将接收到的XML格式,转化为Map对象
* @param request 将request对象,通过参数传入
* @return 返回转换后的Map对象
*/
public static Map<String, String> xmlToMap(HttpServletRequest request) throws IOException, DocumentException{
Map<String, String> map = new HashMap<String, String>();
//从dom4j的jar包中,拿到SAXReader对象。
SAXReader reader = new SAXReader();
InputStream is = request.getInputStream();//从request中,获取输入流
Document doc = reader.read(is);//从reader对象中,读取输入流
Element root = doc.getRootElement();//获取XML文档的根元素
List<Element> list = root.elements();//获得根元素下的所有子节点
for (Element e : list) {
map.put(e.getName(), e.getText());//遍历list对象,并将结果保存到集合中
}
is.close();
return map;
}调用微信接口时(如接收位置信息),将传过来的xml转换为map的工具类
最新推荐文章于 2023-04-24 10:36:47 发布
本文介绍了一种将HTTP请求中的XML数据转换为Java Map对象的方法。利用dom4j库进行XML解析,通过SAXReader读取输入流并提取XML元素的名称及文本内容,最终形成便于进一步处理的数据结构。
,将传过来的xml转换为map的工具类&spm=1001.2101.3001.5002&articleId=78782807&d=1&t=3&u=bfd2e7cceec848589f7fb1b564c74dbc)
2785

被折叠的 条评论
为什么被折叠?



