查看xml子节点的父节点的属性

原创 2015年07月07日 16:32:20
import java.io.File;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class TestClass {


/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
String str = analysisHbmXml("..","_addtimes");
System.out.println(str);
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}


public static String analysisHbmXml(String calssnames,String columnName) throws DocumentException{
String classPath = "";
String classpaths=classPath+calssnames+".hbm.xml"; 
SAXReader reader = new SAXReader(); //User.hbm.xml表示你要解析的xml文档  
        Document document = reader.read(new File(classpaths));
        String objName= null;//对象属性名
        String colName= null;//列名
Element rootElt = document.getRootElement();
        Iterator iter = rootElt.elementIterator("class");            
        while (iter.hasNext()) {  
            Element recordEle = (Element) iter.next(); 
            Iterator iditers = recordEle.elementIterator("id");
            while(iditers.hasNext()){
            Element idrecordEle1 = (Element) iditers.next();  
            Iterator iditerColumn = idrecordEle1.elementIterator("column");
            while(iditerColumn.hasNext()){
            Element idrecordEle2 = (Element) iditerColumn.next();  
            colName =   idrecordEle2.attributeValue("name");//elementTextTrim();
            if (colName.equals(columnName)) {
            objName = idrecordEle2.getParent().attributeValue("name");
}
            }
            }
            Iterator iters = recordEle.elementIterator("property");
            while(iters.hasNext()){
            Element recordEle1 = (Element) iters.next();  
            Iterator iterColumn = recordEle1.elementIterator("column");
            while(iterColumn.hasNext()){
            Element recordEle2 = (Element) iterColumn.next();  
            colName =   recordEle2.attributeValue("name");//elementTextTrim();
            if (colName.equals(columnName)) {
                objName = recordEle2.getParent().attributeValue("name");
}
            }
            }
        }  
        return objName;
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

xml 读取节点中指定的属性值

例子: 一个xml文件:

UE4 RHI浅析

RHI: Render hardware interface 渲染硬件层接口, 本人理解RHI是一套硬件无关,平台无关的图形渲染API.  它是如何做到与平台无关,与硬件无关的呢? 每个RHI接...

UE4渲染系统结构解析(转载)

虚幻4渲染系统结构解析本文转载于 : http://blog.csdn.net/pizi0475/article/details/52876062小米互娱 VR 技术专家 房燕良房燕良,从 2001 ...

html请求服务器xml文件并解析,获取子节点的属性值

在一个单独的页面里获取服务器的xml文件,并解析,小东西,犯了个错,alert老是undifined,var nodes = xmlDoc.getElementsByTagName("download...

关于oracle树结构查询 展示 分组,查找父节点,查找子节点问题

Oracle实在太强了,本篇文章详细介绍了Oracle的递归查询语法,利用此语法,可以方便地实现递归的双向查询: -- Tirle        : Recursion query for TREE...

extjs 遍历树 根据子节点修改父节点图标

extjs 遍历树 修改图标
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)