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

众所周知,大家在微信开发工程中,由于微信开发文档中,对于消息的接收发送都是基础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

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

时间: 2024-10-12 17:33:46

xml转Map,对象,Map转xml的工具类方法的相关文章

map对象转换成xml

1. @XmlAccessorOrder.UNDEFINEDXmlAccessorOrder.UNDEFINED无序   @XmlAccessorOrder.ALPHABETICAL是指按属性的字母顺序排序. 2. @XmlType的propOrder 属性时,必须列出JavaBean对象中的所有属性,否则会报错   @XmlType(propOrder = { "id", "name", "age","book"})指定输出

dom4j将xml转换成对象

package test; import java.lang.reflect.Field; import java.util.HashMap; import java.util.List; import java.util.Map; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.tree.DefaultAttribute; public

Js基础知识7-Es6新增对象Map和set数据结构

前言 JavaScript中对象的本质是键值对的集合,ES5中的数据结构,主要是用Array和Object,但是键只能是字符串.为了弥补这种缺憾,ES6带来了一种新的数据结构Map. Map也是键值对的集合,只是键不仅可以是字符串还可以是其他数据类型,比如:对象(是不是很神奇).请看下面例子..下面话不多说了,来一起看看详细的介绍吧. Map 对象 Map结构提供了“值—值”的对应,任何值(对象或者原始值) 都可以作为一个键或一个值,是一种更完善的Hash结构实现.如果你需要“键值对”的数据结构

xml转为Map集合以及对象转化为xml

package com.fang.util; 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.Element; import org.dom4j.io.SAXReader

[转]解析json:与array,list,map,bean,xml相互转化

一.解析json之net.sf.json 下载地址 使用netsfjson需要导入的包 JSONObject JSONArray JavaBean与json字符串互转 List与json字符串互转 Map与json字符串互转 JSONArray与List互转 JSONArray与数组互转 XML与JSON互转 下载地址 [plain] view plain copy 本次使用版本:http://sourceforge.net/projects/json-lib/files/json-lib/js

Jackson 框架JSON、XML、List、Map直接相互转换

博客分类: json 参考:http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html 在其基础上做了稍微调整 详情见附件 jackson API文档:http://tool.oschina.net/apidocs/apidoc?api=jackson-1.9.9 Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json.xml转换成Java对象.相比json-lib框架,Jackson所依赖的jar

java转换xml、list、map和json

java转换xml.list.map和json [java] view plaincopy package com.shine.framework.core.util; import java.io.ByteArrayOutputStream; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; i

spring如何注入List,Set,Map对象

原文:spring如何注入List,Set,Map对象 代码下载地址:http://www.zuidaima.com/share/1550463255530496.htm 想把java的List,Set,Map对象通过xml方式注入到对象中如何实现呢? 标签: ioc spring 注入 List Set Map话题: Web开发 依赖注入IoC spring如何注入List,Set,Map对象,布布扣,bubuko.com

总结学习! xml与java对象转换 --- JDK自带的JAXB(Java Architecture for XML Binding)

JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术.该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到XML实例文档.从另一方面来讲,JAXB提供了快速而简便的方法将XML模式绑定到Java表示,从而使得Java开发者在Java应用程序中能方便地结合XML数据和处理函数. 注解介绍        1)        @XmlType    

使用XStream是实现XML与Java对象的转换(2)--别名

五.使用别名(Alias) 首先,有这样一段Java代码: Java代码 import java.util.ArrayList; import java.util.List; import com.thoughtworks.xstream.XStream; public class XStreamTest2 { public static void main(String[] args) { Blog teamBlog = new Blog(new Author("Guilherme Silve