<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    悟心

    成功不是將來才有的,而是從決定去做的那一刻起,持續(xù)累積而成。 上人生的旅途罷。前途很遠(yuǎn),也很暗。然而不要怕。不怕的人的面前才有路。

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      93 隨筆 :: 1 文章 :: 103 評論 :: 0 Trackbacks
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;

    import org.dom4j.Document;
    import org.dom4j.DocumentException;
    import org.dom4j.Element;
    import org.dom4j.XPath;
    import org.dom4j.io.SAXReader;

    /**
     * 讀取有命名空間的XML(支持節(jié)點讀取不完整)
     * 
    @author Ai Bo
     * 
    @version 1.3.1 Date 2011-12-14
     
    */

    public class Dom4jFactory {
        
    private SAXReader reader = new SAXReader();
        
    private Document document;
        
    private static Element root;
        
    private static Map<String, String> xmlMap = new HashMap<String, String>();

        
    public Dom4jFactory(String path) {
            
    super();
            
    try {
                document 
    = reader.read(path);
                root 
    = document.getRootElement();
                String defaultNamespace 
    = root.getNamespaceURI();
                xmlMap.put(
    "default", defaultNamespace);
            }
     catch (DocumentException e) {
                e.printStackTrace();
            }

        }


        
    public static List<?> getSelectNodes(String arg0) {
            XPath selector 
    = root.createXPath("//default:" + arg0);
            selector.setNamespaceURIs(xmlMap);
            
    return selector.selectNodes(root);
        }

        
        @SuppressWarnings(
    "unchecked")
        
    public <T> T getSelectObject(String arg0){
            List
    <?> selectNodes = getSelectNodes(arg0);
            
    if(selectNodes.size()==1){
                
    return (T) selectNodes.get(0);
            }
    else{
                
    return null;
            }

        }

    }

     XML文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <inputs xmlns="http://input.abio.com.cn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation
    ="http://input.abio.com.cn http://www.abio.com.cn/sproinput.xsd">
       
    <columns>2</columns>
       
    <input id="id"  datatype="String" minlen="1" maxlen="32" casetype="U" width="40" name_zh="數(shù)據(jù)代碼" inputtype="text" editable="2" gridwidth="3"></input>
       
    <input id="organNo"  datatype="integer" nullable="false" minlen="1" maxlen="20" casetype="U" width="40" name_zh="機(jī)構(gòu)編號" inputtype="text" editable="2"></input>
       
    <input id="organName"  datatype="String" nullable="false" minlen="1" maxlen="20" casetype="U" width="40" name_zh="機(jī)構(gòu)名稱" inputtype="text" editable="2"></input>
       
    <input id="pOrganNo"  datatype="String" nullable="false" minlen="1" maxlen="20" casetype="U" width="40" name_zh="父機(jī)構(gòu)編號" inputtype="text" editable="2"></input>
       
    <input id="effTime"  datatype="Date" validator="Date" nullable="false" format="yyyy-MM-dd" minlen="8" maxlen="8" casetype="U" width="40" name_zh="有效日期" inputtype="date" editable="2"></input>
       
    <input id="createUser"  datatype="String" minlen="1" maxlen="20" casetype="U" width="40" name_zh="創(chuàng)建人" inputtype="text" editable="2"></input>
       
    <input id="createTime"  datatype="Date" minlen="10" maxlen="20" casetype="U" width="40" name_zh="創(chuàng)建日期" editable="2" inputtype="text"></input>
       
    <input id="updateUser"  datatype="String"  minlen="1" maxlen="20" casetype="U" width="40" name_zh="更新人" inputtype="text" editable="2"></input>
       
    <input id="updateTime"  datatype="Date" minlen="10" maxlen="20" casetype="U" width="40" name_zh="更新日期" editable="2" inputtype="text"></input>
    </inputs>

    讀取XML單個節(jié)點(inputs下的columns節(jié)點):

    Dom4jFactory df = new Dom4jFactory("c:\\test.xml");
            DefaultElement columnsitem 
    = df.getSelectObject("columns");

    讀取XML inputs節(jié)點下所有的input節(jié)點:

    Dom4jFactory df = new Dom4jFactory("c:\\test.xml");
                List
    <DefaultElement> inputNodes = df.getSelectNodes("input");




     

    posted on 2011-12-14 16:39 艾波 閱讀(2552) 評論(2)  編輯  收藏 所屬分類: Java

    評論

    # re: Dom4jFactory(讀取包含命名空間的XML(支持節(jié)點讀取不完整)) 2011-12-15 09:04 李剛
    你這個是啥啊 連個解釋都沒有的  回復(fù)  更多評論
      

    # re: Dom4jFactory(讀取包含命名空間的XML(支持節(jié)點讀取不完整))添加使用實例 2011-12-22 16:08 艾波
    已經(jīng)添加了使用實例,謝謝你的意見@李剛
      回復(fù)  更多評論
      

    主站蜘蛛池模板: 国产精品亚洲一区二区无码| 亚洲avav天堂av在线网爱情| 高清免费久久午夜精品| 日韩视频免费一区二区三区| 亚洲小说图区综合在线| 黄网址在线永久免费观看| 亚洲人成人无码.www石榴| 国产在线19禁免费观看国产| 国产亚洲精品美女久久久久| 亚洲成a人无码av波多野按摩 | 人禽杂交18禁网站免费| 久久久国产亚洲精品| 好吊妞788免费视频播放| 亚洲av无码专区国产不乱码| 免费a级毛片大学生免费观看| 一级毛片不卡免费看老司机| 亚洲无线码在线一区观看| 桃子视频在线观看高清免费视频| 久久亚洲AV无码精品色午夜| 一个人免费高清在线观看| 久久精品国产亚洲av瑜伽| 久久综合亚洲色HEZYO国产| 精品四虎免费观看国产高清午夜| 亚洲精品一区二区三区四区乱码 | 亚洲精品视频观看| 一个人免费高清在线观看| 男性gay黄免费网站| 亚洲国产精品无码专区影院| 日本h在线精品免费观看| 亚洲AV永久无码精品网站在线观看| 免费一级毛片不卡在线播放| 国产午夜无码精品免费看动漫| 亚洲无圣光一区二区| 国产一卡二卡≡卡四卡免费乱码| 一级免费黄色毛片| 亚洲国产高清美女在线观看| 国产免费黄色大片| 在线看无码的免费网站| 黄页网址在线免费观看| 亚洲黄网在线观看| 亚洲麻豆精品国偷自产在线91|