仓酷云

标题: JAVA编程:Servlet 和 XML:互为增补(二)(转)... [打印本页]

作者: 莫相离    时间: 2015-1-18 11:26
标题: JAVA编程:Servlet 和 XML:互为增补(二)(转)...
微软什么都提供了。你可以试想一下,如果你是新手,你是希望你点一下按钮程序就能运行那,还是想自己一点一点的组织结构,然后打包发部,调错再打包......servlet|xml清单5.printDOMTree
  1. if(requestedSubtree.equalsIgnoreCase("author"))printDOMTree(author,out);elseif(requestedSubtree.equalsIgnoreCase("lines"))printDOMTree(lines,out);elseif(requestedSubtree.equalsIgnoreCase("title"))printDOMTree(title,out);elseprintDOMTree(doc,out);
复制代码
假如subtree参数是author,则了局是:
  1. <author><last-name>Shakespeare</last-name><first-name>William</first-name><nationality>British</nationality><year-of-birth>1564</year-of-birth><year-of-death>1616</year-of-death></author>
复制代码
假如subtree参数是title,则了局是:
  1. <title>Sonnet130</title>
复制代码
您能够检察完全清单的HTML视图或间接检察Java源文件。
与数据库对接
我们的最初一个示例是依据数据库查询天生XML。有很多办法可做到这一点(请参阅developerWorks的文章GeneratingXMLfromaDataStore);关于本例而言,我们将利用IBM的XMLExtenderforDB2(请参阅参考材料)。这个收费产物使您可以在DB2中存储XML文档。我们的查询从DB2中提取这些文档,然后将其传送给用户。
假如您利用Oracle8i取代DB2,您将会发明它自称具有相似的功效(请参阅参考材料)。关于不睬解XML的数据库,您能够将XML文档存储为字符年夜对象(CLOB),并以文本块的体例检索文档。
可是,在安装数据库今后,您必要完成以下三件事变才干使此代码事情:
在service办法中,我们的servlet毗连DB2,实行一个查询(其了局为一组XML文档),剖析查询了局,并将剖析过的数据写进输入流中。清单6显现了与此干系最亲切的代码部分:
清单6.xmlfromdb2.java
  1. //我们在此处对SQL语句举行硬编码;假如依据用户输出//限定查询,则情形会更加庞大。Stringquery="selectorderfrom"+DbOwner+".sales_order_view";res.setContentType("text/xml");try{ConInfoindex=newConInfo();Connectioncon=getCon(index);Statementstmt=con.createStatement();ResultSetrs=stmt.executeQuery(query);...//显现了局集。我们从每行掏出XML文档,//对其举行剖析,然后打印DOM树。当没有更多的行时,rs.next()前往//false。while(rs.next()){StringnextOrder=rs.getString(1).trim();Documentdoc=null;StringReadersr=newStringReader(nextOrder);InputSourceiSrc=newInputSource(sr);try{parser.parse(iSrc);doc=parser.getDocument();}catch(Exceptione){System.err.println("Sorry,anerroroccurred:"+e);}if(doc!=null)printDOMTree(doc,out);}
复制代码
要懂得全体细节,您能够检察完全清单的HTML视图或间接检察Java源文件。
小结
只管这些servlet示例中没有一个能够改动天下,但它们的确展现了XML和servlet共同得有何等好。Servlet是向客户发送内容的一种巨大机制,而XML是发送布局化数据的一种完善机制。您还可使用servlet处置服务器上的XML文档,并将它们的内容发送给客户机。最主要的是,这两种手艺都是跨平台手艺,可为您的使用程序带来更年夜的天真性和可移值性。
参考材料

进而能拉拢大多数程序员用windows产品。并且从ASP.NETAJAX可以跨平台这一点上,间接证明了我们的推断,至少证明了微软做过这方面的研究。所以如果哪一天突然听说了.net可以跨平台了,那么请不要吃惊,如果这一天真的到来,java就到了真正和.net决战的时刻。因为不到万不得以的时候微软是不会推出跨平台的.net的,如果跨平台的.net还不足以对抗java的话,那么微软还剩的手段就是开源了,呵呵。
作者: 精灵巫婆    时间: 2015-1-21 06:18
是一种语言,用以产生「小应用程序(Applet(s))
作者: 兰色精灵    时间: 2015-1-22 15:37
是一种为 Internet发展的计算机语言
作者: 活着的死人    时间: 2015-1-23 08:10
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
作者: 仓酷云    时间: 2015-1-25 23:42
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
作者: 变相怪杰    时间: 2015-1-26 22:09
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: 乐观    时间: 2015-2-4 20:54
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 再现理想    时间: 2015-2-10 09:17
是一种使用者不需花费很多时间学习的语言
作者: 第二个灵魂    时间: 2015-2-26 19:22
是一种使用者不需花费很多时间学习的语言
作者: 海妖    时间: 2015-3-8 16:41
是一种使网页(Web Page)产生生动活泼画面的语言
作者: 柔情似水    时间: 2015-3-10 15:52
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
作者: 飘灵儿    时间: 2015-3-17 08:10
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
作者: 山那边是海    时间: 2015-3-24 02:50
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2