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

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

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

    數據加載中……
    JAVA XML 解析之一(準備篇)
    2008年4月21日  Edited By DingDangXiaoMa
    關于XML 在JAVA中的應用,相關技術點DOM ,SAX ,JDOM 及DOM4j 
    討論可以參考:http://java.chinaitlab.com/XMLBeans/717370_2.html
    另外可以參考:http://www.javaresearch.org/article/1181.htm
    這兩網址,都有XML的解析的例子?,F把他們的例子,實際的跑了一下,分別對四種技術的例子總結如下。
    javaresearch 上的例子。
    前提準備文件:.xml .dtd ,.xsl
    SutInfo.xml
    <?xml version="1.0"?>
    <?xml-stylesheet href="xsl\StuInfo.xsl" type="text/xsl"?>
    <!DOCTYPE LIT:StuInfo SYSTEM "dtd\student.dtd">
    <LIT:StuInfo xmlns:LIT="http://www.lit.edu.cn/student/">
        
    <LIT:student>
            
    <LIT:name>bigmouse</LIT:name>
            
    <LIT:sex>male</LIT:sex>
            
    <LIT:lesson>
                
    <LIT:lessonName>math</LIT:lessonName>
                
    <LIT:lessonScore>60</LIT:lessonScore>
            
    </LIT:lesson>
            
    <LIT:lesson>
                
    <LIT:lessonName>Englist</LIT:lessonName>
                
    <LIT:lessonScore>59</LIT:lessonScore>
            
    </LIT:lesson>
            
    <LIT:lesson>
                
    <LIT:lessonName>autoCAD</LIT:lessonName>
                
    <LIT:lessonScore>80</LIT:lessonScore>
            
    </LIT:lesson>
            
    <LIT:lesson>
                
    <LIT:lessonName>SCM</LIT:lessonName>
                
    <LIT:lessonScore>90</LIT:lessonScore>
            
    </LIT:lesson>
            
    <LIT:lesson>
                
    <LIT:lessonName>mechanics</LIT:lessonName>
                
    <LIT:lessonScore>61</LIT:lessonScore>
            
    </LIT:lesson>
        
    </LIT:student>
        
    <LIT:breakLine />
        
    <LIT:student>
            
    <LIT:name>coco</LIT:name>
            
    <LIT:sex>female</LIT:sex>
            
    <LIT:lesson>
                
    <LIT:lessonName>math</LIT:lessonName>
                
    <LIT:lessonScore>90</LIT:lessonScore>
            
    </LIT:lesson>
            
    <LIT:lesson>
                
    <LIT:lessonName>Englist</LIT:lessonName>
                
    <LIT:lessonScore>95</LIT:lessonScore>
            
    </LIT:lesson>
            
    <LIT:lesson>
                
    <LIT:lessonName>C++</LIT:lessonName>
                
    <LIT:lessonScore>80</LIT:lessonScore>
            
    </LIT:lesson>
            
    <LIT:lesson>
                
    <LIT:lessonName>Java</LIT:lessonName>
                
    <LIT:lessonScore>85</LIT:lessonScore>
            
    </LIT:lesson>
        
    </LIT:student>
        
    <LIT:breakLine />
        
    <LIT:master>&masterName;
        
    </LIT:master>
    </LIT:StuInfo>
    這個xml中的前幾行中,有xsl及.dtd聲明。一個是樣式,一個是doctype聲明。
    student.dtd
    <!ELEMENT LIT:StuInfo ((LIT:student, LIT:breakLine)*, LIT:master)>
    <!ATTLIST LIT:StuInfo xmlns:LIT CDATA #REQUIRED>
    <!ELEMENT LIT:student (LIT:name, LIT:sex, LIT:lesson*)>
    <!ELEMENT LIT:name (#PCDATA)>
    <!ELEMENT LIT:sex (#PCDATA)>
    <!ELEMENT LIT:lesson (LIT:lessonName, LIT:lessonScore)>
    <!ELEMENT LIT:lessonName (#PCDATA)>
    <!ELEMENT LIT:lessonScore (#PCDATA)>
    <!ELEMENT LIT:breakLine EMPTY>
    <!ELEMENT LIT:master (#PCDATA)>
    <!ENTITY masterName SYSTEM "master.txt">
    StuInfo.xsl
    <?xml version="1.0"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
            xmlns:LIT
    ="http://www.lit.edu.cn/student/"
            version
    ="1.0">
        
    <xsl:template match="LIT:StuInfo">
            
    <html>
                
    <head>
                    
    <title>Student Information</title>
                
    </head>
                
    <body>
                    
    <xsl:apply-templates select="*"/>
                
    </body>
            
    </html>
        
    </xsl:template>

        
    <xsl:template match="LIT:student">
            
    <li>Name:<xsl:value-of select="LIT:name"/></li>
            
    <li>Sex:<xsl:value-of select="LIT:sex"/></li>
            
    <xsl:for-each select="LIT:lesson">
                
    <li>Lesson:<xsl:value-of select="LIT:lessonName"/>(<xsl:value-of select="LIT:lessonScore"/>)</li>
            
    </xsl:for-each>
        
    </xsl:template>

        
    <xsl:template match="LIT:breakLine">
            
    <hr/>
        
    </xsl:template>

        
    <xsl:template match="master">
            
    <xsl:copy-of select="*"/>
        
    </xsl:template>

    </xsl:stylesheet>
    上面就是所有的配置文件了。這些文件可放在web工程的根目錄下面。也可以放在webRoot/xml/文件夾下。我就是放到這個文件夾下的,能過web方式來訪問.xml文件的,當然了,也可以通過絕對路徑來訪問這個資源。
    在下面的程序中,可能會遇到不配置上面的文件,也可在控制臺下訪問.xml打印出相關數據的。但,我還是建議你,把上面dtd.及.xsl的相關知識弄懂一些。
    這一篇就了這里,下一篇講解 DOM例子。

    posted on 2008-04-21 16:33 叮當小馬 閱讀(188) 評論(0)  編輯  收藏 所屬分類: XML

    主站蜘蛛池模板: 日韩亚洲欧洲在线com91tv| 亚洲成a人片在线观看国产| 亚洲国产精品成人久久| 国产精品免费观看视频| 最近中文字幕mv免费高清视频7| 亚洲精品9999久久久久无码| 91精品免费久久久久久久久| 亚洲综合色丁香麻豆| 亚洲国产精品18久久久久久| 67194成是人免费无码| 亚洲乳大丰满中文字幕| 久久久久久国产a免费观看不卡| 在线a亚洲v天堂网2019无码| 亚洲高清一区二区三区| 男人的好看免费观看在线视频| 亚洲粉嫩美白在线| 免费中文字幕不卡视频| 国产精品玖玖美女张开腿让男人桶爽免费看 | 免费VA在线观看无码| 亚洲国产一区二区三区| a级毛片免费在线观看| 久久久久久亚洲精品成人| 日韩在线视频免费| 人人狠狠综合久久亚洲88| 2020因为爱你带字幕免费观看全集| 国产无遮挡无码视频免费软件| 亚洲AV日韩精品久久久久| 日韩欧美一区二区三区免费观看 | 亚洲日韩精品一区二区三区| 日本免费在线中文字幕| 亚洲喷奶水中文字幕电影| 国产精品视频免费一区二区三区 | 日本最新免费不卡二区在线| 97久久精品亚洲中文字幕无码 | 国产成人免费爽爽爽视频| 老湿机一区午夜精品免费福利| 黄色成人免费网站| 男男gay做爽爽免费视频| 午夜免费福利在线| 九九精品成人免费国产片| 亚洲偷偷自拍高清|