java,dom4j读取存储xml文件!
来源:互联网 发布:淘宝,女生韩版西装图片 编辑:程序博客网 时间:2024/06/10 10:20
/*
* Created on 2005-1-20
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package com.beltino.communitymedical.check;
import java.io.*; //Java基础包,包含各种IO操作
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.*;
import com.beltino.communitymedical.check.CheckTemplet;
import java.util.*;
/**
* @author Administrator
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class ImportExportTempBean {
private CheckTemplet checkTempBean=new CheckTemplet();
//生成带体检内容的xml文件
public void createCheckTemple(String tempName){
Document document = DocumentHelper.createDocument();
HashMap hmTreeNode=null; //顶级目录
ArrayList nodeTopList = null; //二级目录
ArrayList nodeTwoList = null; //三级目录
ArrayList nodeTreeList= null; //四级目录
ArrayList nodeFourList= null; //五级目录
hmTreeNode=checkTempBean.getTreeNodeByName(tempName);
Element treeNode = document.addElement("TreeNode").addAttribute("name",hmTreeNode.get("name").toString()).addAttribute("memo",hmTreeNode.get("memo").toString());
nodeTopList=checkTempBean.getTwoCheckType(Integer.parseInt(hmTreeNode.get("autoid").toString()));
for(int i=0;i<nodeTopList.size();i++){
Element nodeTop=treeNode.addElement("nodeTop").addAttribute("item",((Check)nodeTopList.get(i)).getCheckName()).addAttribute("memo",((Check)nodeTopList.get(i)).getCheckMemo());
nodeTwoList=checkTempBean.getThreeCheckType(String.valueOf(((Check)nodeTopList.get(i)).getAutoId()));
for(int j=0;j<nodeTwoList.size();j++){
Element nodeTwo=nodeTop.addElement("nodeTwo").addAttribute("item",((Check)nodeTwoList.get(j)).getCheckName()).addAttribute("memo",((Check)nodeTwoList.get(j)).getCheckMemo());
nodeTreeList=checkTempBean.getFourCheckType(String.valueOf(((Check)nodeTwoList.get(j)).getAutoId()));
for(int k=0;k<nodeTreeList.size();k++){
Element nodeTree=nodeTwo.addElement("nodeTree").addAttribute("item",((Check)nodeTreeList.get(k)).getCheckName()).addAttribute("type",((Check)nodeTreeList.get(k)).getChecktype()).addAttribute("memo",((Check)nodeTreeList.get(k)).getCheckMemo()).addAttribute("default",((Check)nodeTreeList.get(k)).getDefaultData());
nodeFourList=checkTempBean.getFiveCheckType(String.valueOf(((Check)nodeTreeList.get(k)).getAutoId()));
for(int m=0;m<nodeFourList.size();m++){
Element nodeFour=nodeTree.addElement("nodeDown").addText(((Check)nodeFourList.get(m)).getCheckName());
}
}
}
}
saveDocument(document);
}
//把XML中的数据导入到数据库
public boolean importDocument(String fileName){
Document checkDataDoc=readXml(fileName);
Element rootElement=checkDataDoc.getRootElement();
String treeNodeName=rootElement.attributeValue("name");
String treeNodeMemo=rootElement.attributeValue("memo");
//处理TreeNode主结点
boolean retBool=checkTempBean.importXmlData_TreeNode(treeNodeName,treeNodeMemo);
if(retBool==false){
return false;
}
//处理nodeTop结点
List nodeTopList=rootElement.elements("nodeTop");
for(int i=0;i<nodeTopList.size();i++){
Element nodeTopElement=(Element)nodeTopList.get(i);
String nodeTopItem=nodeTopElement.attributeValue("item");
String nodeTopMemo=nodeTopElement.attributeValue("memo");
checkTempBean.insertNodeTop(treeNodeName,nodeTopItem,nodeTopMemo);
//处理nodeTwo结点
List nodeTwo=nodeTopElement.elements("nodeTwo");
for(int j=0;j<nodeTwo.size();j++){
Element nodeTwoElement=(Element)nodeTwo.get(j);
String nodeTwoItem=nodeTwoElement.attributeValue("item");
String nodeTwoMemo=nodeTwoElement.attributeValue("memo");
checkTempBean.insertNodeTree(treeNodeName,nodeTopItem,nodeTwoItem,nodeTwoMemo);
//处理nodeTree结点
List nodeTwoList=nodeTwoElement.elements("nodeTree");
for(int k=0;k<nodeTwoList.size();k++){
Element nodeTreeElement=(Element)nodeTwoList.get(k);
String nodeTreeItem=nodeTreeElement.attributeValue("item");
String nodeTreeMemo=nodeTreeElement.attributeValue("memo");
String nodeTreeType=nodeTreeElement.attributeValue("type");
String nodeTreeTypeInput="0";
if("selectInput".equals(nodeTreeType)){
nodeTreeTypeInput="2";
}else if("textInput".equals(nodeTreeType)){
nodeTreeTypeInput="0";
}else if("radioInput".equals(nodeTreeType)){
nodeTreeTypeInput="3";
}else if("checkboxInput".equals(nodeTreeType)){
nodeTreeTypeInput="1";
}
String nodeTreeDefault=nodeTreeElement.attributeValue("default");
checkTempBean.insertNodeFour(treeNodeName,nodeTopItem,nodeTwoItem,nodeTreeItem,nodeTreeMemo,nodeTreeTypeInput,nodeTreeDefault);
//处理nodeDown结点
List nodeTreeList=nodeTreeElement.elements("nodeDown");
for(int m=0;m<nodeTreeList.size();m++){
Element nodeFourElement=(Element)nodeTreeList.get(m);
String nodeText=nodeFourElement.getText();
checkTempBean.insertNodeFive(treeNodeName,nodeTopItem,nodeTwoItem,nodeTreeItem,nodeText);
}
}
}
}
return true;
}
public void saveDocument(Document document){
try{
// 美化格式
OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter output = new XMLWriter(new FileOutputStream("c://体检模板.xml"),format);
output.write( document );
output.close();
}catch(IOException e){
System.out.println(e.getMessage());
}
}
public Document readXml(String fileName){
SAXReader reader = new SAXReader();
Document document=null;
try{
document = reader.read(new File(fileName));
}catch(Exception e){
System.out.println(e);
}
return document;
}
}
- java,dom4j读取存储xml文件!
- java,dom4j读取存储xml文件!收藏
- Java通过dom4j.jar读取xml文件
- JAVA读取XML文件dom4j实例
- java 使用dom4j.jar读取xml文件
- 如何通过Java DOM4J读取xml文件
- Dom4j读取xml文件——JAVA
- Dom4j读取xml文件——JAVA
- xml文件读取-dom4j
- dom4j读取xml文件
- dom4j读取xml文件
- dom4j读取xml文件
- Dom4j读取XML文件
- Dom4j读取xml文件
- DOM4J读取XML文件
- DOM4J读取XML文件
- Dom4j读取Xml文件
- dom4j读取xml文件
- Vi与UE
- 【原理】window系统下的远程堆栈溢出
- 【实战】window系统下的远程堆栈溢出
- 【分析】Windows Xp Sp2溢出保护
- 一个简易网络嗅探器的实现
- java,dom4j读取存储xml文件!
- 常去音乐站点
- (转)C#/VB - Automated WebSpider / WebRobot
- SQL Server连接中的三个最常见错误
- (转)如何用C#语言构造蜘蛛程序
- 倔强
- Bugzilla 2.19.2 试用手记
- .NET Data Provider
- QmailAnalog & qlogtools 的安装调试