亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? servlet 和 xml:互為補充(二)(轉).txt

?? java學習文檔
?? TXT
字號:
作者:zergman
email: zergman@chinaasp.com
日期:2001-6-15 13:58:03

[b]清單 5. printDOMTree[/b] [TABLE][TR][TD][PRE]    [#993333]if[/#] (requestedSubtree.equalsIgnoreCase([#0000ff]"author"[/#]))      printDOMTree(author, out);    [#993333]else[/#] [#993333]if[/#] (requestedSubtree.equalsIgnoreCase([#0000ff]"lines"[/#]))      printDOMTree(lines, out);    [#993333]else[/#] [#993333]if[/#] (requestedSubtree.equalsIgnoreCase([#0000ff]"title"[/#]))      printDOMTree(title, out);    [#993333]else[/#]       printDOMTree(doc, out);[/PRE][/TD][/TR][/TABLE]
如果 subtree 參數(shù)是 author,則結果是:[TABLE][TR][TD][PRE]  <author>[#0000ff]    [/#]<last-name>[#0000ff]Shakespeare[/#]</last-name>[#0000ff]    [/#]<first-name>[#0000ff]William[/#]</first-name>[#0000ff]    [/#]<nationality>[#0000ff]British[/#]</nationality>[#0000ff]    [/#]<year-of-birth>[#0000ff]1564[/#]</year-of-birth>[#0000ff]    [/#]<year-of-death>[#0000ff]1616[/#]</year-of-death>[#0000ff]  [/#]</author>[/PRE][/TD][/TR][/TABLE]
如果 subtree 參數(shù)是 title,則結果是:[TABLE][TR][TD][PRE]<title>[#0000ff]Sonnet 130[/#]</title>[/PRE][/TD][/TR][/TABLE]
您可以查看[url href=http://www.cn.ibm.com/developerWorks/java/servlets-and-xml/xmlfromdom-src.html]完整清單的 HTML 視圖[/url]或直接查看 [url href=http://www.cn.ibm.com/developerWorks/java/servlets-and-xml/xmlfromdom.java]Java 源文件[/url]。 
[b]與數(shù)據(jù)庫對接[/b] 
我們的最后一個示例是根據(jù)數(shù)據(jù)庫查詢生成 XML。有許多方法可做到這一點(請參閱 developerWorks 的文章 [url href=http://www-4.ibm.com/software/developer/library/buildappl/genxml.html]Generating XML from a Data Store[/url]);對于本例而言,我們將使用 IBM 的 XML Extender for DB2(請參閱[url href=http://www.cn.ibm.com/developerWorks/java/servlets-and-xml/index.shtml#resources]參考資料[/url])。這個免費產(chǎn)品使您能夠在 DB2 中存儲 XML 文檔。我們的查詢從 DB2 中提取這些文檔,然后將其傳送給用戶。
如果您使用 Oracle 8i 代替 DB2,您將會發(fā)現(xiàn)它自稱具有類似的功能(請參閱[url href=http://www.cn.ibm.com/developerWorks/java/servlets-and-xml/index.shtml#resources]參考資料[/url])。對于不理解 XML 的數(shù)據(jù)庫,您可以將 XML 文檔存儲為字符大對象 (CLOB),并以文本塊的方式檢索文檔。
但是,在安裝數(shù)據(jù)庫以后,您需要完成以下三件事情才能使此代碼工作:[OL][LI]首先,將 DbOwner、DbUserid 和 DbPasswd 變量改為適合系統(tǒng)的適當值。
[TABLE][TR][TD][PRE]   [#666666]/////////////////////////////////////////////////////////////////[/#]       [#666666]// 一定要正確更改這三個字符串,否則                            //[/#]   [#666666]// servlet 不會工作。                                          //[/#]   [#666666]/////////////////////////////////////////////////////////////////[/#]       [#006600]DbUserid[/#] = [#0000ff]"xxxxxxxx"[/#];   [#006600]DbPasswd[/#] = [#0000ff]"xxxxxxxx"[/#];   [#006600]DbOwner[/#] = [#0000ff]"xxxxxxxx"[/#];   [/PRE][/TD][/TR][/TABLE]

[LI]下一步,使用適合您的系統(tǒng)的 JDBC 驅動程序。我們在使用 DB2。
[TABLE][TR][TD][PRE]    [#993333]static[/#] [#006600]String[/#] [#006600]JDBCDriver[/#] = [#0000ff]"COM.ibm.db2.jdbc.app.DB2Driver"[/#];    ...    [#993333]try[/#]    {      Class.forName([#0000ff]"COM.ibm.db2.jdbc.app.DB2Driver"[/#]).newInstance();    }    [#993333]catch[/#] ([#006600]Exception[/#] [#000066]e[/#])    {      System.out.println([#0000ff]"Can't get the driver!"[/#]); e.printStackTrace();    }[/PRE][/TD][/TR][/TABLE]

[LI]如果你愿意,可以改掉下面的 SQL 查詢語句。為了簡化示例,此處僅檢索 sales_order_view 表的 order 列中的全部 XML 文檔。
[TABLE][TR][TD][PRE]    [#666666]// 我們在此處對 SQL 語句進行硬編碼;如果根據(jù)用戶輸入[/#]    [#666666]// 限制查詢,則情況會更為復雜。[/#]    [#006600]String[/#] [#000066]query[/#] = [#0000ff]"select order from "[/#] + [#006600]DbOwner[/#] + [#0000ff]".sales_order_view"[/#];[/PRE][/TD][/TR][/TABLE][/LI][/OL]
在 service 方法中,我們的 servlet 連接 DB2,執(zhí)行一個查詢(其結果為一組 XML 文檔),分析查詢結果,并將分析過的數(shù)據(jù)寫入輸出流中。清單 6 顯示了與此關系最密切的代碼部分: 
[b]清單 6. xmlfromdb2.java[/b] [TABLE][TR][TD][PRE]    [#666666]// 我們在此處對 SQL 語句進行硬編碼;如果根據(jù)用戶輸入[/#]    [#666666]// 限制查詢,則情況會更為復雜。[/#]    [#006600]String[/#] [#000066]query[/#] = [#0000ff]"select order from "[/#] + [#006600]DbOwner[/#] + [#0000ff]".sales_order_view"[/#];    res.setContentType([#0000ff]"text/xml"[/#]);    [#993333]try[/#]      {        [#006600]ConInfo[/#] [#000066]index[/#] = [#993333]new[/#] [#006600]ConInfo[/#]();        [#006600]Connection[/#] [#000066]con[/#] = getCon(index);        [#006600]Statement[/#] [#000066]stmt[/#] = con.createStatement();        [#006600]ResultSet[/#] [#000066]rs[/#] = stmt.executeQuery(query);        ...        [#666666]// 顯示結果集。我們從每行取出 XML 文檔,[/#]        [#666666]// 對其進行分析,然后打印 DOM 樹。當沒有更多的行時,rs.next() 返回[/#]        [#666666]// false。[/#]        [#993333]while[/#] (rs.next())          {             [#006600]String[/#] [#000066]nextOrder[/#] = rs.getString(1).trim();            [#006600]Document[/#] [#000066]doc[/#] = [#990099]null[/#];            [#006600]StringReader[/#] [#000066]sr[/#] = [#993333]new[/#] [#006600]StringReader[/#](nextOrder);            [#006600]InputSource[/#] [#000066]iSrc[/#] = [#993333]new[/#] [#006600]InputSource[/#](sr);                        [#993333]try[/#]              {                parser.parse(iSrc);                doc = parser.getDocument();              }            [#993333]catch[/#] ([#006600]Exception[/#] [#000066]e[/#])              {                System.err.println([#0000ff]"Sorry, an error occurred: "[/#] + e);              }                        [#993333]if[/#] (doc != [#990099]null[/#])              printDOMTree(doc, out);          }[/PRE][/TD][/TR][/TABLE]
要了解全部細節(jié),您可以查看[url href=http://www.cn.ibm.com/developerWorks/java/servlets-and-xml/xmlfromdb2-src.html]完整清單的 HTML 視圖[/url]或直接查看[url href=http://www.cn.ibm.com/developerWorks/java/servlets-and-xml/xmlfromdb2.java]Java 源文件[/url]。
[b]小結[/b] 
盡管這些 servlet 示例中沒有一個可以改變世界,但它們確實展示了 XML 和 servlet 配合得有多么好。Servlet 是向客戶發(fā)送內(nèi)容的一種偉大機制,而 XML 是發(fā)送結構化數(shù)據(jù)的一種完美機制。您還可以使用 servlet 處理服務器上的 XML 文檔,并將它們的內(nèi)容發(fā)送給客戶機。最重要的是,這兩種技術都是跨平臺技術,可為您的應用程序帶來更大的靈活性和可移值性。
[b]參考資料[/b] 
[UL][LI]了解有關 [url href=http://www-4.ibm.com/software/data/db2/extenders/xmlext/index.html]DB2 XML Extender[/url] 的詳細信息。產(chǎn)品附帶的文檔中有一個深入的教程,它可幫助您將 XML 文檔帶入關系數(shù)據(jù)庫的世界中。 [LI]了解有關 [url href=http://www.oracle.com/database/oracle8i/]Oracle 數(shù)據(jù)庫產(chǎn)品[/url]的詳細信息。 [LI]試用 WebSphere 附帶的免費 [url href=http://www.software.ibm.com/webservers/appserv/tutorial.html]servlet 教程[/url]。 [LI]通過 developerWorks 的 [url href=http://www.cn.ibm.com/developerWorks/education/xml/xmljava/index.html]XML programming in Java[/url] 教程深入研究如何分析 XML 文件。 [LI]下載作者為 City Java 用戶組制作的演示文稿的 [url href=ftp://www6.software.ibm.com/software/developer/library/xmlservlet.pdf]PDF[/url] 版本。 [LI]在 [url href=http://www.gnu.org/software/emacs/emacs.html]www.gnu.org[/url] 網(wǎng)站學習使用 Emacs 彩色編碼代碼清單。HTMLize 程序包可從網(wǎng)址 [url href=http://jagor.srce.hr/~hniksic/htmlize.el]jagor.srce.hr[/url] 獲得。[/LI][/UL]

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人官网二区| 欧美美女激情18p| 日本免费新一区视频| 亚洲综合一区二区| 一区二区三区电影在线播| 亚洲靠逼com| 亚洲国产aⅴ成人精品无吗| 蜜臀av一区二区| 国产尤物一区二区在线| 丰满亚洲少妇av| 不卡视频免费播放| 欧美色综合网站| 日韩精品一区二区三区蜜臀 | 亚洲视频免费观看| 日韩一区在线播放| 亚州成人在线电影| 免费三级欧美电影| 国产高清不卡一区| 欧洲国内综合视频| 欧美理论电影在线| 久久久精品黄色| 一区二区视频免费在线观看| 五月天一区二区三区| 国产一区三区三区| 一本一本久久a久久精品综合麻豆| 欧洲一区二区三区免费视频| 日韩午夜激情av| 国产精品国产三级国产三级人妇 | 欧美影院精品一区| 欧美xxxxxxxxx| 亚洲欧美福利一区二区| 日本视频一区二区| 成人av免费在线播放| 欧美另类z0zxhd电影| 亚洲国产精品v| 日韩成人精品视频| 成人免费看片app下载| 欧美一区二区三区啪啪| 亚洲精品国产a| 国产成人在线免费| 制服丝袜亚洲网站| 亚洲欧美经典视频| 丁香网亚洲国际| 欧美片网站yy| 亚洲精品乱码久久久久久| 国产毛片精品一区| 91精品国产综合久久小美女| 日韩美女啊v在线免费观看| 国产在线精品视频| 欧美一区二区三区影视| 亚洲精品videosex极品| 国产成人亚洲综合色影视| 91精品国产综合久久精品| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 日本午夜精品一区二区三区电影| 91亚洲精品久久久蜜桃| 欧美国产激情二区三区| 国产黄人亚洲片| 精品国产1区二区| 奇米888四色在线精品| 7777精品伊人久久久大香线蕉| 亚洲欧美欧美一区二区三区| 成人av片在线观看| 亚洲欧美在线观看| 99免费精品视频| 国产精品毛片大码女人| 粉嫩一区二区三区在线看| 国产精品国产三级国产普通话99 | 亚洲人妖av一区二区| 粉嫩aⅴ一区二区三区四区| 久久中文字幕电影| 精品一区二区三区视频在线观看 | 国产精品乱码人人做人人爱 | 国产一区二区三区蝌蚪| 91精品国产综合久久精品app | 国产精品99久久久久久似苏梦涵| 日韩欧美亚洲国产另类| 免费看欧美女人艹b| 精品久久五月天| 国产精品一区二区在线观看不卡| 亚洲精品一线二线三线无人区| 精品伊人久久久久7777人| 欧美电影免费观看完整版| 国产一区二区免费在线| 日本一区二区在线不卡| aaa欧美大片| 亚洲高清不卡在线| 欧美一级在线视频| 国产成人在线视频网址| 樱桃视频在线观看一区| 欧美日韩国产成人在线91| 看电视剧不卡顿的网站| 中文字幕av不卡| 在线免费视频一区二区| 九九精品一区二区| 日韩毛片一二三区| 欧美区视频在线观看| 国产精品一区二区三区99| 亚洲欧美日韩国产一区二区三区| 欧美色老头old∨ideo| 国产一区二区在线观看视频| 亚洲欧美日韩中文播放| 欧美酷刑日本凌虐凌虐| 国产一区二区三区免费| 亚洲综合丝袜美腿| 久久综合999| 欧美图区在线视频| 国产一区不卡精品| 亚洲国产乱码最新视频| 久久久精品黄色| 欧美精品在线一区二区三区| 福利一区在线观看| 日韩国产高清在线| 亚洲免费三区一区二区| 精品国产乱码久久久久久闺蜜| 不卡av免费在线观看| 日韩黄色免费电影| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 欧美日韩不卡一区二区| 成人免费毛片高清视频| 老司机精品视频导航| 亚洲国产精品久久久久婷婷884| 国产亚洲欧美在线| 欧美日韩在线观看一区二区 | 欧美大片拔萝卜| 色呦呦国产精品| 国产成人免费视| 日本va欧美va欧美va精品| 亚洲欧美经典视频| 国产精品看片你懂得| 一区二区三区在线视频播放| 精品欧美乱码久久久久久1区2区| 欧美日韩一区高清| 91亚洲精品乱码久久久久久蜜桃| 国产传媒一区在线| 精品一区二区三区日韩| 蜜桃久久精品一区二区| 日韩精品一级二级| 五月天中文字幕一区二区| 亚洲国产一二三| 亚洲五码中文字幕| 玉米视频成人免费看| 一区二区三区欧美视频| 亚洲欧美激情视频在线观看一区二区三区 | 久久久亚洲国产美女国产盗摄| 4hu四虎永久在线影院成人| 欧美视频在线观看一区二区| www.日韩av| a级高清视频欧美日韩| gogo大胆日本视频一区| 99国产精品久久| 91网站最新地址| 91在线观看一区二区| 色婷婷久久99综合精品jk白丝| 波多野结衣亚洲一区| 91日韩在线专区| 在线观看国产日韩| 欧美精品自拍偷拍动漫精品| 欧美一卡2卡三卡4卡5免费| 欧美成人一区二区三区 | 99精品视频在线观看免费| 99久久精品国产一区| 色综合天天综合色综合av| 欧美性视频一区二区三区| 3d成人h动漫网站入口| 精品国产髙清在线看国产毛片| 欧美videos大乳护士334| 国产女人aaa级久久久级| 亚洲狼人国产精品| 老司机精品视频导航| 成人在线一区二区三区| 91久久精品网| 日韩欧美中文字幕公布| 国产欧美日韩在线视频| 一区二区三区 在线观看视频| 肉丝袜脚交视频一区二区| 国产剧情一区二区| 色94色欧美sute亚洲线路一久| 欧美日韩成人综合| 国产午夜三级一区二区三| 亚洲综合色网站| 国产精华液一区二区三区| 在线观看不卡一区| 精品国产自在久精品国产| 亚洲精品自拍动漫在线| 六月丁香婷婷久久| 91蝌蚪porny| 精品国产乱码久久久久久老虎| 综合久久久久久久| 看电影不卡的网站| 欧美色涩在线第一页| 亚洲国产精品黑人久久久| 男人的天堂亚洲一区| 91浏览器打开| 国产亚洲一区二区三区在线观看| 亚洲 欧美综合在线网络| hitomi一区二区三区精品| 欧美videos中文字幕| 亚洲18女电影在线观看| 91最新地址在线播放|