這種方式雖然可以產生所需的XML檔案資料,但是還必須自己幫temp.xml檔案加上套用titles.xsl檔案來展現,的確稍嫌麻煩,是否能夠直接產生結果展現會比較好呢?沒錯,靜態的檔案還是比不上動態產生的結果。最好是取出資料便能夠直接用程式套用XSL並且直接展現,這該如何做到呢? |
其實做法很簡單,範例如下: |
< % Set Conn = Server.CreateObject("ADODB.Connection") Set RS = Server.CreateObject("ADODB.Recordset")
conn.Open "Provider=SQLOLEDB;Initial Catalog=Pubs;Data Source=(local);User Id=sa;Password=;" Set RS=Conn.Execute("Select title_id,title,type,price From titles")
'指定回應到Client的資料為XML格式 |
Response.ContentType="text/xml" |
Response.Write "< ?xml version=""1.0"" encoding=""Big5""? >"
Response.Write "< Jerry >" do while not rs.EOF Response.Write "< Record " for i=0 to rs.Fields.Count-1 Response.Write rs.Fields(i).Name & "=""" Response.Write rs(i) Response.write """ " next Response.Write " / >" rs.MoveNext loop Response.Write "< /Jerry >" % > |
ADO-XML.asp |
透過Response.ContentType="text/xml"指令,改變回應給Client端的資料為XML格式而非HTML,並利用ASP迴圈語法取出資料並定義XML標籤,當Client端的瀏覽器接收到結果時,便以XML文件的展現方式來處理,結果如下: |
|
接下來只要在程式中再加上一列指令,如下: |
'在Process Introduce下方加上套用XSL語法 Response.Write "< ?xml version=""1.0"" encoding=""Big5""? >" |
Response.Write "< ?xml-stylesheet type=""text/xsl"" href=""titles2.xsl""? >" |
|
而這裡所套用的titles2.xsl只需要從titles.xsl改變一個地方即可使用,如下: |
titles.xsl的迴圈語法抓出所有的<row>資料: <br><img height="10" src="http://www.msservermag.com.tw/member/article/images/0.gif" width="20" alt="">< xsl:for-each select="//z:row" order-by="@title" > <br><br>改寫為titles2.xsl的抓所有<record></record>資料:<br><img height="10" src="http://www.msservermag.com.tw/member/article/images/0.gif" width="20" alt="">< xsl:for-each select="//Record" order-by="@title" > </row> |
|
如此一來,在程式中便能決定要套用的是哪一份XSL檔案,並且能夠直接展現,結果便與圖五相同了,差別就在於不需手動套用XSL檔案,而且是動態取得資料來展現,當然也能夠動態套用XSL檔案囉。 |
另外,或許這些XML標籤並不想用欄位的名字,當然也可以經由迴圈來產生所需的XML標籤,如下: |
Response.Write "< Jerry >" do while not rs.EOF Response.Write "< Record >" |
Response.Write "< Column1 >" & rs("title_id") & "< /Column1 >" Response.Write "< Column2 >" & rs("title") & "< /Column2 >" Response.Write "< Column3 >" & rs("type") & "< /Column3 >" Response.Write "< Column4 >" & rs("price") & "< /Column4 >" |
Response.Write "< /Record >" rs.MoveNext loop Response.Write "< /Jerry >" |
|
結果如下圖: |
|
相关推荐
赠送jar包:simple-xml-safe-2.7.1.jar; 赠送原API文档:simple-xml-safe-2.7.1-javadoc.jar; 赠送源代码:simple-xml-safe-2.7.1-sources.jar; 赠送Maven依赖信息文件:simple-xml-safe-2.7.1.pom; 包含翻译后...
赠送jar包:scala-xml_2.12-1.0.6.jar; 赠送原API文档:scala-xml_2.12-1.0.6-javadoc.jar; 赠送源代码:scala-xml_2.12-1.0.6-sources.jar; 赠送Maven依赖信息文件:scala-xml_2.12-1.0.6.pom; 包含翻译后的API...
赠送jar包:jakarta.xml.bind-api-2.3.3.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.3-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.3-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...
赠送jar包:cxf-rt-bindings-xml-3.0.1.jar; 赠送原API文档:cxf-rt-bindings-xml-3.0.1-javadoc.jar; 赠送源代码:cxf-rt-bindings-xml-3.0.1-sources.jar; 赠送Maven依赖信息文件:cxf-rt-bindings-xml-3.0.1....
本主题将深入探讨三个知名的XML解析库:xerces-c-3.2.3、tinyxml_2_6.2以及tinyxml2。 1. xerces-c-3.2.3: xerces-c是一个开源的XML解析器,由Apache软件基金会维护。版本3.2.3是这个项目的一个稳定版本,提供了...
eclipse中使用xml自动提示功能所需文件:mybatis-3-mapper.dtd eclipse中使用xml自动提示功能所需文件:mybatis-3-mapper.dtd eclipse中使用xml自动提示功能所需文件:mybatis-3-mapper.dtd
赠送jar包:xmlgraphics-commons-2.1.jar; 赠送原API文档:xmlgraphics-commons-2.1-javadoc.jar; 赠送源代码:xmlgraphics-commons-2.1-sources.jar; 赠送Maven依赖信息文件:xmlgraphics-commons-2.1.pom; ...
赠送jar包:netty-codec-xml-4.1.73.Final.jar; 赠送原API文档:netty-codec-xml-4.1.73.Final-javadoc.jar; 赠送源代码:netty-codec-xml-4.1.73.Final-sources.jar; 赠送Maven依赖信息文件:netty-codec-xml-...
赠送jar包:xmlgraphics-commons-2.1.jar; 赠送原API文档:xmlgraphics-commons-2.1-javadoc.jar; 赠送源代码:xmlgraphics-commons-2.1-sources.jar; 赠送Maven依赖信息文件:xmlgraphics-commons-2.1.pom; ...
赠送jar包:scala-xml_2.11-1.0.1.jar; 赠送原API文档:scala-xml_2.11-1.0.1-javadoc.jar; 赠送源代码:scala-xml_2.11-1.0.1-sources.jar; 赠送Maven依赖信息文件:scala-xml_2.11-1.0.1.pom; 包含翻译后的API...
赠送jar包:netty-codec-xml-4.1.74.Final.jar; 赠送原API文档:netty-codec-xml-4.1.74.Final-javadoc.jar; 赠送源代码:netty-codec-xml-4.1.74.Final-sources.jar; 赠送Maven依赖信息文件:netty-codec-xml-...
赠送jar包:jakarta.xml.bind-api-2.3.3.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.3-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.3-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
3. **版本冲突**:可能存在与其他库冲突的情况,比如项目中同时使用了不同版本的XML API实现。在这种情况下,需要检查并适当地解决依赖冲突,确保使用的XML API版本与项目兼容。 4. **环境配置问题**:在某些IDE...
赠送jar包:jackson-dataformat-xml-2.12.2.jar; 赠送原API文档:jackson-dataformat-xml-2.12.2-javadoc.jar; 赠送源代码:jackson-dataformat-xml-2.12.2-sources.jar; 赠送Maven依赖信息文件:jackson-data...
赠送jar包:jetty-xml-9.4.11.v20180605.jar; 赠送原API文档:jetty-xml-9.4.11.v20180605-javadoc.jar; 赠送源代码:jetty-xml-9.4.11.v20180605-sources.jar; 赠送Maven依赖信息文件:jetty-xml-9.4.11.v...
赠送jar包:jetty-xml-8.1.8.v20121106.jar; 赠送原API文档:jetty-xml-8.1.8.v20121106-javadoc.jar; 赠送源代码:jetty-xml-8.1.8.v20121106-sources.jar; 赠送Maven依赖信息文件:jetty-xml-8.1.8.v20121106....
赠送jar包:jackson-dataformat-xml-2.12.2.jar; 赠送原API文档:jackson-dataformat-xml-2.12.2-javadoc.jar; 赠送源代码:jackson-dataformat-xml-2.12.2-sources.jar; 赠送Maven依赖信息文件:jackson-data...
赠送jar包:jakarta.xml.bind-api-2.3.2.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.2-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.2-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...
赠送jar包:jakarta.xml.bind-api-2.3.2.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.2-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.2-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...