父类:
package com.siku.manorage.common.readsend.xml;
import java.io.StringReader;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class BaseReaderXml {
public SAXReader getSAXReader() {
return new SAXReader();
}
public Document getDocument(String file) throws Exception {
StringReader in = new StringReader(file);
return this.getSAXReader().read(in);
}
public Element getRootElement(String file) throws Exception {
return this.getDocument(file).getRootElement();
}
}
子类:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.dom4j.Element;
/**
* 接受前台传来数据(XML)到后台进行解析
*
* *
*/
public class ReceiveClientXml extends BaseReaderXml {
/**
* 把拦截器里面的string 类型的xml 转化为一个map
* @param file
* @return 把前台传过来的xml 解析出来 放到一个map 里面
* @throws Exception
*/
@SuppressWarnings("unchecked")
public Map<String, Object> receivedClientXml(String file) throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
List<HashMap> elementList = new ArrayList<HashMap>();
Element root = this.getRootElement(file);
Iterator<Element> it = root.elementIterator();
for (; it.hasNext();)
{
Element ele = it.next();
if("element".equals(ele.getName().trim()))//二级结构 ..modified by zhangzhao 2010-3-27
{
Iterator<Element> it2 = ele.elementIterator();
HashMap map2 = new HashMap();
for(;it2.hasNext();)
{
Element ele2 = it2.next();
map2.put(ele2.getName().trim(), ele2.getTextTrim());
}
elementList.add(map2);
}
else
{
map.put(ele.getName(), ele.getTextTrim());
}
}
map.put("elementList", elementList);
return map;
}
}
分享到:
相关推荐
xml解析为map,代码已经测试,可直接使用。
在`EasyXmlUtil`类中,这两个方法的实现可能会使用递归处理Map的层级结构,以确保复杂的嵌套Map也能正确地转换成XML。同时,为了处理XML的特殊字符,如<、>等,工具类可能还包含了字符转义的逻辑。 关于`maven依赖....
java map解析成xml java map解析成xml
将xml串转换成Map类型,如果有重复节点,自动转换为list类型存储,所以最终转换并非绝对Map
xml2map XML到MAP转换器的Golang编写的转换器 有时需要表示以前未知的结构。 这种通用表示形式通常是JSON,XML或数据映射结构形式的字符串。 类似于map [string] interface {}或map [interface {}] interface {}。 ...
`xmlToMap`方法负责将XML字符串解析成Map: ```java import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; import java.util.HashMap; ...
- 如果XML结构简单,没有复杂的嵌套,可以使用JAXB将XML解析为Java对象,然后手动将其转换为Map。例如,如果你有一个只有一个根元素且没有子元素的XML,你可以创建一个对应的Java类,并使用JAXB的`Unmarshaller....
同样的,你可以创建一个解析器来将XML字符串解析成`List`对象,但你需要知道预期的XML结构以便正确地构建对象。 在实际项目中,通常会有更复杂的XML结构,可能包含嵌套的Map和List,这可能需要递归方法或额外的逻辑...
"java转换xml、list、map和json" 本文主要讲述了Java中将xml、list、map和json之间的转换的相关知识点。 xml和map之间的转换 在Java中,xml和map之间的转换可以通过使用dom4j库来实现。dom4j是一个Java开源库,...
解析xml文件-转换map新增数据库解析xml文件-转换map新增数据库
1. 创建一个XML解析器:使用`javax.xml.parsers.DocumentBuilderFactory`来创建一个解析器,然后使用该解析器来解析XML字符串或文件,得到`org.w3c.dom.Document`对象。 2. 遍历XML节点:通过`Document`对象获取根...
### Map转换为XML的知识点详解 在Java编程中,将数据结构如`Map`转换为XML格式是一种常见的需求,尤其是在处理配置文件、数据交换或与Web服务交互时。以下是对如何实现这一转换的深入解析,涵盖了代码逻辑、关键...
这个过程通常涉及到XML解析和数据映射。 在描述中提到的“递归 XML 转 MAP”,是指XML文档可能存在嵌套结构,递归方法是处理这种结构的有效手段。递归意味着函数调用自身来处理XML元素的子节点,直到所有节点都被...
在这个“xml解析案例”中,我们将探讨如何使用Pull解析器来处理网络数据。Pull解析器是一种轻量级的解析方式,它允许程序在解析XML文档时主动拉取下一个事件,而不是等待解析器推送给它。 首先,让我们了解XML的...
xml翻译文件,配合316编号文章
1、xml文档解析 2、 dom4j解析xml 3、实现xml文件解析 xml字符串解析 xml MAP键值对解析 4、实现xml写入与生成文件
它可能会使用DOM(Document Object Model)、SAX(Simple API for XML)或StAX(Streaming API for XML)等XML解析器,通过遍历Map中的键值对,构建XML文档的元素结构。 2. `xmlToMap(String xmlString)`: 另一个...
在微信支付中,交易结果、订单信息等通常以XML格式返回,开发者需要将XML解析成Map对象进行处理,或者将Map对象转换成XML发送给微信服务器。工具类在这里的作用就是简化这个过程,提供便捷的XML与Map之间的转换方法...
此类分装了xml的解析方法,非常使用 CCfgDataMgr::CCfgDataMgr(void) { } CCfgDataMgr::~CCfgDataMgr(void) { } bool CCfgDataMgr::CallBackFunc(string xmlNodeCurrent, string xmlNodeParent, map,string> str2...