- 浏览: 126355 次
最新评论
-
gaoxikun:
看起来很齐全,很完美,但是不知道从哪里下载 。
myeclipse插件简单介绍 -
gaoxikun:
亲,能把这个集成了插件的myeclipse 6.5给我一下吗, ...
myeclipse插件简单介绍 -
hotsmile:
不错!!!!!!!!!
myeclipse插件简单介绍
/**
* <?xml version="1.0" encoding="UTF-8"?>
<root>
<tree id="root" useArrows="false">
<node>
<id>unifyProxy</id>
<parentId></parentId>
<text>开通接口</text>
<method></method>
</node>
<node expanded="false">
<id>corpManager</id>
<parentId>unifyProxy</parentId>
<text>集团管理</text>
<method></method>
</node>
<node>
<id>corp</id>
<parentId>corpManager</parentId>
<text>集团</text>
<method>initBusinessGroup()</method>
</node>
</tree>
</root>
TreeNode:
private String id;
private String parentId;
private String text;
private String method;
Tree:
private String id = null;
private List<TreeNode> nodeList = new ArrayList<TreeNode>();
*/
private static final Map<String, Tree> treeMap = new HashMap<String, Tree>();
private String nodeConfigFile;
public static Map<String, Tree> getTreeMap()
{
return treeMap;
}
/**
* 读取配置文件
*/
public void init()
{
try
{
// String cmClientPath = SystemLoader.getCmClientPath();
// File configFile = new File(cmClientPath + File.separator + nodeConfigFile.trim());
File configFile = new File("D://我的文档//workspace/CMClient//WebRoot//WEB-INF//conf//common//tree_config.xml");
SAXReader reader = new SAXReader();
Document document = reader.read(configFile);
parse(document);
}
catch (DocumentException e)
{
e.printStackTrace();
}
catch (Exception e)
{
e.printStackTrace();
}
}
/**
* 解析配置值
* @param document
* @author liudong
* @throws Exception 抛出异常
*/
private void parse(Document document)
throws Exception
{
//Tree就是
Tree tree = null;
TreeNode treeNode = null;
final Element root = document.getRootElement();
final List< ? > trees = root.elements("tree");
for (final Iterator< ? > iterator = trees.iterator(); iterator.hasNext();)
{
Element treeElement = (Element) iterator.next();
tree = new Tree();
parseTreeAttribute(tree, treeElement);
List< ? > nodes = treeElement.elements("node");
for (final Iterator< ? > iter = nodes.iterator(); iter.hasNext();)
{
final Element nodeElement = (Element) iter.next();
treeNode = new TreeNode();
parseNodeAttribute(treeNode, nodeElement);
parseNodeValue(treeNode,nodeElement);
tree.getNodeList().add(treeNode);
}
treeMap.put(tree.getId(), tree);
}
}
private void parseTreeAttribute(Tree tree, Element element)
{
//
final Attribute idAtt = element.attribute("id");
tree.setId("root");
if (null != idAtt && ParamChecking.isBlank(idAtt.getValue()))
{
tree.setId(UnifyUtils.processTrim(idAtt.getValue()));
}
final Attribute useArrowsAtt = element.attribute("useArrows");
if (null != useArrowsAtt && "false".equals(UnifyUtils.processTrim(useArrowsAtt.getValue())))
{
tree.getTreeOptions().setUseArrows(false);
}
}
private void parseNodeAttribute(TreeNode node, Element element)
{
final Attribute expanded = element.attribute("expanded");
if (null != expanded && "false".equals(expanded.getValue()))
{
node.getTreeNodeOptions().setExpanded(false);
}
}
private void parseNodeValue(TreeNode node, Element element)
{
org.dom4j.Node idNode = element.element("id");
org.dom4j.Node textNode = element.element("text");
org.dom4j.Node parentIdNode = element.element("parentId");
org.dom4j.Node methodNode = element.element("method");
node.setId(idNode.getText().trim());
node.setParentId(parentIdNode.getText().trim());
node.setText(textNode.getText().trim());
node.setMethod(methodNode.getText().trim());
}
/**
* @return Returns the nodeConfigFile.
*/
public String getNodeConfigFile()
{
return nodeConfigFile;
}
/**
* @param nodeConfigFile The nodeConfigFile to set.
*/
public void setNodeConfigFile(String nodeConfigFile)
{
this.nodeConfigFile = nodeConfigFile;
}
* <?xml version="1.0" encoding="UTF-8"?>
<root>
<tree id="root" useArrows="false">
<node>
<id>unifyProxy</id>
<parentId></parentId>
<text>开通接口</text>
<method></method>
</node>
<node expanded="false">
<id>corpManager</id>
<parentId>unifyProxy</parentId>
<text>集团管理</text>
<method></method>
</node>
<node>
<id>corp</id>
<parentId>corpManager</parentId>
<text>集团</text>
<method>initBusinessGroup()</method>
</node>
</tree>
</root>
TreeNode:
private String id;
private String parentId;
private String text;
private String method;
Tree:
private String id = null;
private List<TreeNode> nodeList = new ArrayList<TreeNode>();
*/
private static final Map<String, Tree> treeMap = new HashMap<String, Tree>();
private String nodeConfigFile;
public static Map<String, Tree> getTreeMap()
{
return treeMap;
}
/**
* 读取配置文件
*/
public void init()
{
try
{
// String cmClientPath = SystemLoader.getCmClientPath();
// File configFile = new File(cmClientPath + File.separator + nodeConfigFile.trim());
File configFile = new File("D://我的文档//workspace/CMClient//WebRoot//WEB-INF//conf//common//tree_config.xml");
SAXReader reader = new SAXReader();
Document document = reader.read(configFile);
parse(document);
}
catch (DocumentException e)
{
e.printStackTrace();
}
catch (Exception e)
{
e.printStackTrace();
}
}
/**
* 解析配置值
* @param document
* @author liudong
* @throws Exception 抛出异常
*/
private void parse(Document document)
throws Exception
{
//Tree就是
Tree tree = null;
TreeNode treeNode = null;
final Element root = document.getRootElement();
final List< ? > trees = root.elements("tree");
for (final Iterator< ? > iterator = trees.iterator(); iterator.hasNext();)
{
Element treeElement = (Element) iterator.next();
tree = new Tree();
parseTreeAttribute(tree, treeElement);
List< ? > nodes = treeElement.elements("node");
for (final Iterator< ? > iter = nodes.iterator(); iter.hasNext();)
{
final Element nodeElement = (Element) iter.next();
treeNode = new TreeNode();
parseNodeAttribute(treeNode, nodeElement);
parseNodeValue(treeNode,nodeElement);
tree.getNodeList().add(treeNode);
}
treeMap.put(tree.getId(), tree);
}
}
private void parseTreeAttribute(Tree tree, Element element)
{
//
final Attribute idAtt = element.attribute("id");
tree.setId("root");
if (null != idAtt && ParamChecking.isBlank(idAtt.getValue()))
{
tree.setId(UnifyUtils.processTrim(idAtt.getValue()));
}
final Attribute useArrowsAtt = element.attribute("useArrows");
if (null != useArrowsAtt && "false".equals(UnifyUtils.processTrim(useArrowsAtt.getValue())))
{
tree.getTreeOptions().setUseArrows(false);
}
}
private void parseNodeAttribute(TreeNode node, Element element)
{
final Attribute expanded = element.attribute("expanded");
if (null != expanded && "false".equals(expanded.getValue()))
{
node.getTreeNodeOptions().setExpanded(false);
}
}
private void parseNodeValue(TreeNode node, Element element)
{
org.dom4j.Node idNode = element.element("id");
org.dom4j.Node textNode = element.element("text");
org.dom4j.Node parentIdNode = element.element("parentId");
org.dom4j.Node methodNode = element.element("method");
node.setId(idNode.getText().trim());
node.setParentId(parentIdNode.getText().trim());
node.setText(textNode.getText().trim());
node.setMethod(methodNode.getText().trim());
}
/**
* @return Returns the nodeConfigFile.
*/
public String getNodeConfigFile()
{
return nodeConfigFile;
}
/**
* @param nodeConfigFile The nodeConfigFile to set.
*/
public void setNodeConfigFile(String nodeConfigFile)
{
this.nodeConfigFile = nodeConfigFile;
}
发表评论
-
java 中的文件读取信息
2013-03-11 08:56 1118import java.io.BufferedReader ... -
oracle结果集的操作信息
2013-03-04 16:22 1016众所周知的几个结果集集合操作命令,今天详细地测试了一下,发现一 ... -
js正则表达式(二)
2013-01-09 11:20 929首先加个重要的东西 * ... -
java路径问题以及java对文件的基本操作信息
2012-12-19 14:09 10101.基本概念的理解 绝对 ... -
JS正则表达式
2012-11-15 17:10 887function isTrueName(s) { var pa ... -
java公用类
2012-11-15 17:05 896package cn.org.jshuwei.j2ee.uti ... -
java规范信息
2012-10-30 08:44 28891 一、判断选择题(每题1分) 1. 表达式要在低优先级操作符 ... -
java时间公用和StringUnitl以及java调用存储过程
2012-10-16 17:38 16671 构建存储过程的语句信息 /** * 从Fun ... -
jquery批量删除
2012-09-20 14:31 3426<%@ page language="java ... -
java操作execl文件(2003与2007不兼容问题)
2012-09-19 14:49 1502package com.huawei.bss.execlCom ... -
java操作execl文件
2012-09-19 08:53 1024package com.huawei.bss.execlCom ... -
通过onkeypress和onkeydown事件禁用键盘中某些键
2012-09-17 15:09 1000http://zywang.iteye.com/blog/70 ... -
properties的修改
2012-09-14 16:05 1098public static void modifyProper ... -
java学习的一点记录
2012-09-12 16:15 1336public class Tools { stati ... -
STRUTS2与JSON的LIST和MAP对象返回
2012-09-07 14:57 6712<%@ page language="java ... -
struts2 iterator双重叠迭取值
2012-09-05 18:08 1300•效果:Map<String,List<Derpa ... -
struts2多个配置文件的应用
2012-09-05 10:10 1115<!-- 定义Struts2的核心Filter --&g ... -
java中使用net.sf.json对json进行解析
2012-09-04 12:24 1090作者: http://zhangnet1.iteye.com/ ... -
JSON与 STRuts2
2012-09-04 10:20 1343package com.huawei.cmclient.com ... -
sql在不同数据库查询前几条数据
2012-09-03 15:14 832sql在不同数据库查询前几条数据 1. ORACLE ...
相关推荐
使用java工具xml2axml.jar反编译AndroidManafest文件 通过xml2axml.jar工具反编译AndroidManafest文件 还原AndroidManafest.xml详细过程: 1、获取到apk 2、解压获取里面的AndroidManifest.xml文件 3、在xml2axml....
TinyXML和TinyXML2是两个小型的开源库,专门用于解析和操作XML(eXtensible Markup Language)文档。这两个库都是用C++编写的,为C++开发者提供了方便的接口来读取、写入和操作XML数据。下面将详细介绍这两个库的...
pugixml是一款轻量级、高性能的C++库,专为XML解析和操作而设计。这个库由Artemev开发,提供了简单易用的API,使得在C++项目中处理XML文档变得非常便捷。本示例将详细介绍如何使用pugixml进行XML的读取和写入操作。 ...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用在软件开发、Web服务、配置文件等领域。本文将深入探讨XML与JavaBean之间的转换、XML标签的大小写规则、XML特殊符号的处理以及CDATA的生成。 ...
TinyXML-2 是一个简单、小型、高效的 C++ XML 解析器,可以被轻松集成到其他程序中。它使用文档对象模型(DOM)的方式解析XML,可解析 XML 文档,并根据该文档构建可读取、修改和保存的文档对象模型。 作为XML解析...
**Pugixml详解:一个高效易用的XML解析库** 在编程中,XML(Extensible Markup Language)是一种被广泛使用的数据交换格式,特别是在跨平台通信、配置文件和数据存储等领域。为了处理XML文档,开发者通常需要依赖...
andxml汉化版是一个xml文件反编译工具,可与APKTOOL反编译配合使用,APK文件使用APKTool反编译生成XML文件后,就可以直接通过它进行汉化编辑 注意: 1、一键机器翻译会造成某些代码出现翻译错误现象,请人工识别。...
Oracle数据库系统提供了强大的XML处理能力,这主要体现在其内置的几个PL/SQL包上,如DBMS_XMLDOM、DBMS_XMLPARSER和DBMS_XMLQUERY。这些包为开发者提供了处理XML文档的一整套工具,使得在数据库环境中进行XML数据的...
- 库的主要类包括`XMLDocument`(XML文档对象)、`XMLElement`(XML元素)、`XMLText`(XML文本)、`XMLComment`(XML注释)和`XMLAttribute`(XML属性)等。 2. **解析XML文件** - 使用`XMLDocument::LoadFile()...
标题中的“PB解析XML字符串 把XML 变为数据窗口”指的是使用PowerBuilder(PB)这一编程工具,处理XML格式的数据,并将其转换成数据窗口对象的过程。数据窗口是PowerBuilder中的一个核心组件,用于显示、编辑和管理...
XML(eXtensible Markup Language)是一种用于标记数据的语言,其设计目的是传输和存储数据,而非显示数据。在IT行业中,XML因其结构清晰、可扩展性强的特点,被广泛应用于数据交换、配置文件、Web服务等领域。本文...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于配置文件、数据交换、文档存储等领域。TinyXML2是轻量级的C++ XML解析库,它提供了简单、直接的方式来读写XML文档。本项目是基于tinyxml2...
XML(eXtensible Markup Language)是一种用于存储和交换数据的标记语言,广泛应用于软件开发、数据存储和网络通信等领域。Matlab作为一个强大的数值计算和数据分析环境,也提供了与XML交互的功能,这主要通过XML ...
XMLParser是一种用于解析XML文档的C++实现,它旨在提供简单、小巧且稳定的解决方案,以处理XML数据。XML,即可扩展标记语言,是用于存储和传输数据的标准格式,广泛应用于配置文件、数据交换和文档结构化等领域。XML...
在本文中,我们将深入探讨如何使用Microsoft Foundation Class (MFC) 框架与XML库,如TinyXML2,来实现保存控件数据至XML文件以及从XML文件中读取数据回控件的功能。这对于创建应用程序配置文件或者保存用户自定义...
在Qt框架中,XML文件是一种常见的数据存储格式,它提供了结构化的数据表示方式,便于程序读取和写入。QTreeWidget是Qt提供的一种用于显示树状结构数据的控件,它可以很好地展示XML文件的层次结构。QXml是Qt中的XML...
在Java编程中,XML(可扩展标记语言)和Map(映射)是两种常见的数据存储和交换格式。XML因其结构化和易于解析的特性,在数据交换和配置文件中广泛使用,而Map则作为Java中存储键值对的高效数据结构。在实际开发中,...
在本文中,我们将深入探讨如何在STM32F107上使用minixml库解析XML(可扩展标记语言)文档,这对于那些初次尝试在嵌入式环境中处理XML数据的开发者来说,是非常有价值的。 XML是一种通用的数据交换格式,它允许结构...
TinyXML2是一个小型、快速且易于使用的C++库,用于解析和生成XML文档。这个库的设计目标是简单、高效,并且适用于嵌入式系统。在本文中,我们将深入探讨如何使用TinyXML2来解析和创建XML文件,特别是涉及到CDATA区段...
### XML校验工具详解 #### 一、XML与W3C简介 - **XML(Extensible Markup Language)**:一种标记语言,旨在定义一套规则,用于结构化文档中数据的存储和传输。XML的设计目标是尽可能地保持数据的原始性和纯粹性,...