码迷,mamicode.com
首页 > 其他好文 > 详细

xml转Map,对象,Map转xml的工具类方法

时间:2018-08-19 15:47:52      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:read   new   根据   name   exception   格式   util   nbsp   class   

众所周知,大家在微信开发工程中,由于微信开发文档中,对于消息的接收发送都是基础xml数据的(太坑了),所以我们需要对XML进行解析转换;

1.我们先引入所需要的依赖 dom4j (解析xml的),xstream(可以将对象,以及复杂对象转换为xml);

<dependency>

<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>

<!-- 转换xml类 -->
<dependency>
<groupId>com.thoughtworks.xstream</groupId>
<artifactId>xstream</artifactId>
<version>1.4.5</version>
</dependency>

 

2.开始编码 --我会对下面utils类进行解释

(1)此方法用于在微信公众号开发中,后台接收到微信消息后(微信的消息都是xml数据格式),根据request .getInputStream()获取流,然后进行xml解析转换为Map

  ,此方法只能获取到xml的一级元素,但对于开发微信公众号来说,够用了!!

 

 

    public static Map<String,String> xmlTOMap(HttpServletRequest request) throws Exception{
        
        Map<String,String> map =new HashMap<String,String>();
        SAXReader reader =new SAXReader();
        InputStream ins=null;
        try {
             ins =request.getInputStream();
        } catch (IOException e) {
            
            e.printStackTrace();
        }
        Document docment =reader.read(ins);//读取流对象
        Element root=docment.getRootElement();
        List<Element> list =root.elements();
        for(Element ele:list) {
            
            map.put(ele.getName(), ele.getText());
        }
        
        return map;
        
        
    }

 

 

(2)将xml字符串转换为Map

 

xml转Map,对象,Map转xml的工具类方法

标签:read   new   根据   name   exception   格式   util   nbsp   class   

原文地址:https://www.cnblogs.com/iscys/p/9501155.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!