java xml转map(java dom4j 读取xml, 将xml 转换成 List<map<>>)

:暂无数据 2026-08-11 12:20:01 :1

java xml转map(java dom4j 读取xml, 将xml 转换成 List<map<>>)

大家好,如果您还对java xml转map不太了解,没有关系,今天就由本站为大家分享java xml转map的知识,包括java dom4j 读取xml, 将xml 转换成 List>的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

本文目录

java dom4j 读取xml, 将xml 转换成 List>

String truepathSub = truepath.substring(0, truepath.length()-4);
String truepath1Sub = zipnpath.substring(0, zipnpath.length()-4);
String zipname = truepath.substring(25, truepath.length()-4);
SAXReader saxRead = new SAXReader();
Document inDoc = saxRead.read(new File(“C:\\apache-tomcat-6.0.29\\webapps\\xml\\“+truepathSub+
“\\“+truepath1Sub+“\\Test MetaData.xml“));

Element rootEl = inDoc.getRootElement();
Element element = rootEl.element(“Datas“);
//Element element1 = element.element(“TestData“);

for(Iterator i = element.elementIterator();i.hasNext();){

Element bookEl = (Element) i.next();

String Identifier = bookEl.elementText(“Identifier“);
String Type = bookEl.elementText(“Type“);
String Questions = bookEl.elementText(“Questions“);
String Difficulty = bookEl.elementText(“Difficulty“);
String SpecialtyType = bookEl.elementText(“SpecialtyType“);
String Specialty = bookEl.elementText(“Specialty“);
String Keyword = bookEl.elementText(“Keyword“);
String Answer = bookEl.elementText(“Answer“);
String Analysis = bookEl.elementText(“Analysis“);
String Contribute = bookEl.elementText(“Contribute“);
String Entity = bookEl.elementText(“Entity“);
String Date = bookEl.elementText(“Date“);
String Region = bookEl.elementText(“Region“);
String TypeOfSchool = bookEl.elementText(“TypeOfSchool“);
String EducationLevels = bookEl.elementText(“EducationLevels“);
String Course = bookEl.elementText(“Course“);

List《Stysj》 bookList = new ArrayList《Stysj》();
Stysj stysj = null;
stysj = new Stysj();
stysj.setIdentifier(Identifier);
stysj.setType(Type);
stysj.setQuestions(Questions);
stysj.setDifficulty(Difficulty);
stysj.setSpecialtyType(SpecialtyType);
stysj.setSpecialty(Specialty);
stysj.setKeyword(Keyword);
stysj.setAnswer(Answer);
stysj.setAnalysis(Analysis);
stysj.setContribute(Contribute);
stysj.setEntity(Entity);
stysj.setDate(Date);
stysj.setRegion(Region);
stysj.setTypeOfSchool(TypeOfSchool);
stysj.setEducationLevels(EducationLevels);
stysj.setCourse(Course);
stysj.setXmlname(zipname);
bookList.add(stysj);
simpleService.save(stysj);

java中 inputStream怎样高效率的准换成xml和json对象,然后转换成map集合

如果要转换成XML,可以使用Transformer转换
DOMResult result;
InputStream in = null;
try {
in = connect.getInputStream();
result = new DOMResult();
Transformer transformer = TransformerFactory.newInstance()
.newTransformer();
transformer.transform(new StreamSource(in), result);
} finally {
if (in != null) {
in.close();
}
}
Document doc = (Document)result..getNode();
Element docElement = doc.getDocumentElement();

后面就是你自己解析了

java解析xml如何用dom方式解析xml并将数据放入hashmap

纯dom和sax解析都是用工厂模式
用纯dom解析这样创建xml对象
Document doucment = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(file);
file是xml文件路径
然后用getElementByTagName获取节点,开始解析
另外,这样用hashmap感觉很别扭
你确定要这样存?

Java文件解析xml文件转成 map

xml 文件解析 涉及到 属性 和 相同的节点元素, 解析成map需要做相应的处理,

具体实现可以看以下链接,
http://blog.csdn.net/u011490355/article/details/77775544

使用java语言,谁能提供一个读取xml文件,并将其转换成hashmap的通用类

/**
* 文件名:ReadXML.java
* 版本信息: V1.0
* 日期:2012-3-15
* Copyright Corporation 2010
* 版权所有 SNZKE
*/
package org.study.util;

import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

/**
* 项目名称:JavaOO
* 《br》类名称:ReadXML
* 《br》类描述:
* 《br》创建人:zengfc
* 《br》创建时间:2012-3-15 上午10:29:31
* 《br》修改人:zengfc
* 《br》修改时间:2012-3-15 上午10:29:31
* 《br》修改备注:
* 《br》@version
*/
public class ReadXML {
private static final String TAGNAME = “_tagName“;
private static final String ATTRIBUTES = “_attributes“;
private static final String CONTENT = “_content“;
private Node root;
public ReadXML(String path,String rootName){
loadXMLFILE(path,rootName);
}
public ReadXML(String path){
loadXMLFILE(path);
}
public void loadXMLFILE(String path){
loadXMLFILE(path,null);
}
public void loadXMLFILE(String path,String rootName){
File file = new File(path);
try {
if (file.exists()) {
Document document = DocumentBuilderFactory
.newInstance()
.newDocumentBuilder()
.parse(new File(path));
if(rootName == null || ““.equals(rootName)){
root = document.getFirstChild();
}else{
NodeList nodeList = document.getElementsByTagName(rootName);//根节点
root = nodeList.item(0);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public Map《String,Object》 readXml(){
try {
return readXml(root,null);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}

private Map《String,Object》 readXml(Node node,Map《String,Object》 parent) throws Exception{
Map《String,Object》 map=null;

String name = node.getNodeName();
map=new HashMap《String,Object》();
if(“#text“.equals(name)){
parent.put(CONTENT, node.getNodeValue());
return null;
}
map.put(TAGNAME, name);
map.put(CONTENT, node.getTextContent());
map.put(ATTRIBUTES, loadAttributes(node));
if(node.getNodeType() == Node.TEXT_NODE && !node.getNodeValue().trim().equals(““)){
map.put(“value“, node.getNodeValue());
}

if(node.getFirstChild() != null){
NodeList childNodes = node.getChildNodes();
for (int j = 0; j 《 childNodes.getLength(); j++) {
Node childNode = childNodes.item(j);
Map《String,Object》 par = new HashMap《String,Object》();
par.putAll(map);
String childName = childNode.getNodeName();
Map《String,Object》 inner = readXml(childNode,par);
if(inner != null){
if(map.containsKey(childName)){
Object obj = map.get(childName);
if(obj instanceof Map《?,?》){
List《Map《?,?》》 list = new ArrayList《Map《?,?》》();
list.add((Map《?,?》)map.get(childName));
list.add(inner);
map.put(childName, list);
}else if(obj instanceof List《?》){
((List《Map《?,?》》)map.get(childName)).add(inner);
}
}else{
map.put(childName, inner);
}
}
}
}

return map;
}
private Map《String,String》 loadAttributes(Node node){
Map《String,String》 attributes;
if(node.hasAttributes()){
attributes = new HashMap《String,String》();
}else{
return null;
}
NamedNodeMap maps = node.getAttributes();
for (int i = 0; i 《 maps.getLength(); i++) {
Node nod = maps.item(i);
attributes.put(nod.getNodeName(), nod.getNodeValue());
}
return attributes;
}
public static void main(String args) {
Map《String,Object》 map = new ReadXML(“person.xml“).readXml();
System.out.println(map);
}
}

JAVA中如何遍历xml,取出 键、值传进Map里(考虑xml中的子节点的问题)用递归写 求救!谢谢了!

我估计是要求按WCF模式下,利用NHibernate的架构方式组合

首先NHibernate里面有object-relation map 的xml
而WCF可以生成domainService,所以,一个是处于数据库层,一个是处于数据访问层

但是这两种方式的组合,我还没弄过,就在这里给你提一下吧

仔细看
2.An object-relation map for use by a object-relation system (or a ‘decorated’ domain model) such as NHibernate or EntityFramework/LINQ
是说你要讲数据库表,映射成有映射关系的NHibernate 模式,或EntityFramework/LINQ模式,可以任选其一,那么就可以选择任意一种模式了
另外,团IDC网上有许多产品团购,便宜有口碑

java解析xml字符串 后 组装成map形式,求大神

java html(XML)解析工具jsoup:
说明:使用起来非常简单,就先jquery的dom操作一样方便,jsoup 是一款Java 的HTML、XML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。使用它来做解析非常简单方便。

jsoup中文参考文档:
http://www.open-open.com/jsoup/

关于本次java xml转map和java dom4j 读取xml, 将xml 转换成 List>的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

java xml转map(java dom4j 读取xml, 将xml 转换成 List<map<>>)

本文编辑:admin

更多文章:


majority of(the majority of 和 a majority of的区别以及用法例句)

majority of(the majority of 和 a majority of的区别以及用法例句)

这篇文章给大家聊聊关于majority of,以及the majority of 和 a majority of的区别以及用法例句对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月11日 07:40

汉字机内码查询表(1个汉字的机内码是几位谢谢)

汉字机内码查询表(1个汉字的机内码是几位谢谢)

大家好,关于汉字机内码查询表很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于1个汉字的机内码是几位谢谢的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年10月11日 07:20

promote翻译(英语翻译倡导怎么说)

promote翻译(英语翻译倡导怎么说)

其实promote翻译的问题并不复杂,但是又很多的朋友都不太了解英语翻译倡导怎么说,因此呢,今天小编就来为大家分享promote翻译的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月11日 06:30

用手机如何导航?开车用手机导航哪个软件最好

用手机如何导航?开车用手机导航哪个软件最好

今天给各位分享用手机如何导航的知识,其中也会对用手机如何导航进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月11日 06:20

多线程技术有什么用(多线程有什么作用)

多线程技术有什么用(多线程有什么作用)

其实多线程技术有什么用的问题并不复杂,但是又很多的朋友都不太了解多线程有什么作用,因此呢,今天小编就来为大家分享多线程技术有什么用的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月11日 05:40

another time(another time和other time的区别)

another time(another time和other time的区别)

大家好,another time相信很多的网友都不是很明白,包括another time和other time的区别也是一样,不过没有关系,接下来就来为大家分享关于another time和another time和other time的区

2026年10月11日 05:00

java开发工具包jdk(JDK是什么意思)

java开发工具包jdk(JDK是什么意思)

其实java开发工具包jdk的问题并不复杂,但是又很多的朋友都不太了解JDK是什么意思,因此呢,今天小编就来为大家分享java开发工具包jdk的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月11日 04:50

mysql 命令(MySQL的基本命令)

mysql 命令(MySQL的基本命令)

大家好,如果您还对mysql 命令不太了解,没有关系,今天就由本站为大家分享mysql 命令的知识,包括MySQL的基本命令的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月11日 03:00

手机云备份是什么意思?手机上的云备份有什么用 怎么用呢

手机云备份是什么意思?手机上的云备份有什么用 怎么用呢

各位老铁们,大家好,今天由我来为大家分享云备份,以及手机云备份是什么意思的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

2026年10月11日 02:40

java遍历map的key(java Map 怎么遍历)

java遍历map的key(java Map 怎么遍历)

大家好,java遍历map的key相信很多的网友都不是很明白,包括java Map 怎么遍历也是一样,不过没有关系,接下来就来为大家分享关于java遍历map的key和java Map 怎么遍历的一些知识点,大家可以关注收藏,免得下次来找不

2026年10月11日 02:20

最近更新

majority of(the majority of 和 a majority of的区别以及用法例句)
2026-10-11 07:40:02 浏览:0
promote翻译(英语翻译倡导怎么说)
2026-10-11 06:30:03 浏览:0
热门文章

标签列表