??xml version="1.0" encoding="utf-8" standalone="yes"?>在线观看入口黄最新永久免费国产,成人在线免费观看,久久一区二区三区avhttp://www.aygfsteel.com/liver/我不够贪心!其实我应该明白,心有多贪Q舞台就会有多大Q坚持!奋斗Q?/description>zh-cnWed, 18 Jun 2025 02:08:07 GMTWed, 18 Jun 2025 02:08:07 GMT60[转蝲]Javaq程通讯技术ȝhttp://www.aygfsteel.com/liver/archive/2010/05/07/320301.htmlLiverLiverFri, 07 May 2010 09:24:00 GMThttp://www.aygfsteel.com/liver/archive/2010/05/07/320301.htmlhttp://www.aygfsteel.com/liver/comments/320301.htmlhttp://www.aygfsteel.com/liver/archive/2010/05/07/320301.html#Feedback0http://www.aygfsteel.com/liver/comments/commentRss/320301.htmlhttp://www.aygfsteel.com/liver/services/trackbacks/320301.html阅读全文

Liver 2010-05-07 17:24 发表评论
]]>
[转蝲]Web Services&XMLQ什么是Web Servicehttp://www.aygfsteel.com/liver/archive/2010/04/27/319497.htmlLiverLiverTue, 27 Apr 2010 08:42:00 GMThttp://www.aygfsteel.com/liver/archive/2010/04/27/319497.htmlhttp://www.aygfsteel.com/liver/comments/319497.htmlhttp://www.aygfsteel.com/liver/archive/2010/04/27/319497.html#Feedback0http://www.aygfsteel.com/liver/comments/commentRss/319497.htmlhttp://www.aygfsteel.com/liver/services/trackbacks/319497.html
在http//www.hexiesoft.net 上你可以ƣ赏?NET下用微软开发工具徏立的Web Service企业UERP应用pȝ?br />
?http//dwdemos.alphaworks.ibm.com/HospitalProj/index.html上,你可以体验用IBM开发工具创建的提供ȝ保险信息查询的Web Service?br />
Web Service概念

什么是 Web Service呢?从表面上看,Web Service是一个应用程序,它向外界暴露Z个能够通过Webq行调用的API。这是_你能够用~程的方法通过Web调用来实现某个功能的应用E序。例如,W者创Z个Web ServiceQ它的作用是查询某公司某员工的基本信息。它接受该员工的~号作ؓ查询字符Ԍq回该员工的具体信息。你可以在浏览器的地址栏中直接输入HTTP GETh来调用罗列该员工基本信息的ASP面Q这可以算作是体验Web Service了?br />
从深层次上看QWeb Service是一U新的Web应用E序分支Q它们是自包含、自描述、模块化的应用,可以在网l?通常为Web)中被描述、发布、查找以及通过Web来调用?br />
Web Service便是Z|络的、分布式的模块化lgQ它执行特定的Q务,遵守具体的技术规范,q些规范使得Web Service能与其他兼容的组件进行互操作。它可以使用标准的互联网协议Q像文本传输协议HTTP和XMLQ将功能体现在互联网和企业内部网上。Web Serviceq_是一套标准,它定义了应用E序如何在Web上实C操作性。你可以用你喜欢的Q何语a(W者用的是C#)Q在你喜Ƣ的Mq_上写Web Service?br />
Web Service的技术支?/span>

Web Serviceq_需要一套协议来实现分布式应用程序的创徏。Q何^台都有它的数据表C方法和cdpȝ。要实现互操作性,Web Serviceq_必须提供一套标准的cdpȝQ用于沟通不同^台、编E语a和组件模型中的不同类型系l。目前这些协议有Q?br />
1.XML和XSD

可扩展的标记语言XML?是Web Serviceq_中表C数据的基本格式。除了易于徏立和易于分析外,XML主要的优点在于它既与q_无关Q又与厂商无兟뀂XML是由万维|协?W3C)创徏QW3C制定的XML SchemaXSD?定义了一套标准的数据cdQƈl出了一U语a来扩展这套数据类型?br />
Web Serviceq_是用XSD来作为数据类型系l的。当你用某种语言?VB.NET或C#?来构造一个Web ServiceӞZW合Web Service标准Q所有你使用的数据类型都必须被{换ؓXSDcd。如惌它用在不同q_和不同Y件的不同l织间传递,q需要用某种东西它包装h。这U东西就是一U协议,?SOAP?br />
2.SOAP

SOAP即简单对象访问协?Simple Object Access Protocol)Q它是用于交换XML~码信息的轻量协议。它有三个主要方面:XML-envelope为描qC息内容和如何处理内容定义了框Ӟ程序对象编码成为XML对象的规则,执行q程q程调用(RPC)的约定?SOAP可以q行在Q何其他传输协议上。例如,你可以?SMTPQ即因特|电子邮件协议来传递SOAP消息Q这可是很有诱惑力的。在传输层之间的头是不同的,但XML有效负蝲保持相同?br />
Web Service 希望实现不同的系l之间能够用“软g-软g对话”的方式相互调用,打破了Y件应用、网站和各种讑֤之间的格g入的状态,实现“ZWeb无缝集成”的目标?br />
3.WSDL

Web Service描述语言WSDL?是用机器能阅读的方式提供的一个正式描q文档而基于XML的语aQ用于描qWeb Service及其函数、参数和q回倹{因为是ZXML的,所以WSDL既是机器可阅ȝQ又是h可阅ȝ?br />
4.UDDI

UDDI 的目的是为电子商务徏立标准;UDDI是一套基于Web的、分布式的、ؓWeb Service提供的、信息注册中心的实现标准规范Q同时也包含一l企业能将自n提供的Web Service注册Q以使别的企业能够发现的讉K协议的实现标准?br />
5.q程q程调用RPC与消息传?/em>

Web Service本n其实是在实现应用E序间的通信。我们现在有两种应用E序通信的方法:RPCq程q程调用?和消息传递。用RPC的时候,客户端的概念是调用服务器上的q程q程Q通常方式为实例化一个远E对象ƈ调用其方法和属性。RPCpȝ试图辑ֈ一U位|上的透明性:服务器暴露出q程对象的接口,而客L好像在本地使用的这些对象的接口一Pq样隐藏了底层的信息,客户端也根本不需要知道对象是在哪台机器上?br />
Web Service软g的支?/span>

操作pȝM开丰富的应用Y件的支持。同PWeb Serviceq项技术只有通过日益q泛的应用才能体现出其h|目前比较行的实现方法是使用.NET ?Java两种技术,q且两种实现Ҏ可以互相操作Q如今我们已l可以看C用微软?IBM、SUN、Borland{不同厂商的Web Service构徏工具建立的Web Service应用?br />
微Y.NET

微Y?NET技术应该算是时下最为流行的Web Service 开发技术。首先因为其公司在以前相应的产品占有相当大的市Z额,以至使新推出?NET得以有比较稳定的用户;其次也是更重要的?.NETq_不仅延箋了微软一贯的~程风格Q而且q增加了许多支持Web 服务的关键性技术,使得.NET在操作的单性和执行的稳定性,高效性上辑ֈ了一个非常好的结合?br />
微Y的Visual Studio.NET便是一个便?Web 服务的开发工兗微软的目标是,其新编E语a??C#作ؓWeb Service的首选语a。虽然C#看v来与JavacMQ但是还有一?Java中没有的独特的功能?NET技术中用于Web Service 开发的主要工具是ASP.NET?从技术上_ASPasp.net? 提供了一些超出ASP以前版本的优?例如Q代码和HTML的分,与脚本语a相比较,?#8220;真正”的编E语a?C# 的支??br />
IBM?WebSphere

IBM公司是业界第一家能够提供全面支持Web服务的电子商务基设施中间件的公司。通过多年来与 W3C(The World Wide Web Consortium)的共同努力,包括DB2、Lotus、Tivoli 和WebSphere在内的所有IBM软g都实C对SOAP、WSDL、UDDI、Linux、XML、J2EE{开放技术和标准的全面支持。  IBM公司的WebSphere 也是比较好的基础架构软g开发^台。WebSphere软gq_及开发工具包?WebSphere Studio Application Developer WSAD? ZJ2EE、XML 和Web服务{开放标准,q具?IBM 在可靠性、扩展性和安全性上的主要优ѝWebSphere ?IBM ?Web Services{略中的核心q_Q它支持所有开发、发布、部|?Web Services应用所必需的开放标准和技术,包括 UDDIQSOAPQJ2EEQWSDLQ和?XML 技术集成的增强Q这特得它在全球有很多用户?br />
Borland的JBuilder

Borland公司?JBuilder7中,用户可以用其Borland Web Services Kit for Java和Borland JBuilder MobileSet 3q行更快捷地开发Web Service和无U应用。这样将使开发者能够在同一个开发环境中L地创建和集成Web Service。今q新推出的JBuidler8 更是针对Web Service开发更提供了方便和高效的方法?br />
MQ在Web Service开发上Q?NET 和Java都是很好的选择Q尽两者现在都有一些需要完善的地方Q但是就目前来说Q它们还是最好的开发手D和技术。具体选择哪种开发工P也是仁者见仁,见智的问题。从Ҏ上说Q这两种Ҏ没有C孰劣的问题,只是Ҏ使用者对q两U方法的掌握E度和对具体语言的偏q度来军_?

Liver 2010-04-27 16:42 发表评论
]]>
再谈U程Q生产者与消费?/title><link>http://www.aygfsteel.com/liver/archive/2009/06/04/279970.html</link><dc:creator>Liver</dc:creator><author>Liver</author><pubDate>Thu, 04 Jun 2009 02:57:00 GMT</pubDate><guid>http://www.aygfsteel.com/liver/archive/2009/06/04/279970.html</guid><wfw:comment>http://www.aygfsteel.com/liver/comments/279970.html</wfw:comment><comments>http://www.aygfsteel.com/liver/archive/2009/06/04/279970.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.aygfsteel.com/liver/comments/commentRss/279970.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/liver/services/trackbacks/279970.html</trackback:ping><description><![CDATA[     摘要: 昨天提到了线E,那么׃得不提到“生者与消费?#8221;q样一个经典的U程同步问题? 场景描述Q?    一个仓库,生者在工厂里生产了产品后,品存攑ֈ仓库里,仓库存放数量有限Q当满仓后,停止生Q直到有消费着品消费后才l生产;消费者从仓库里提取品,当仓库空仓时Q停止消费品,直到仓库中有产品Ӟ才l消费品? ...  <a href='http://www.aygfsteel.com/liver/archive/2009/06/04/279970.html'>阅读全文</a><img src ="http://www.aygfsteel.com/liver/aggbug/279970.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/liver/" target="_blank">Liver</a> 2009-06-04 10:57 <a href="http://www.aygfsteel.com/liver/archive/2009/06/04/279970.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>U程7U状态的怺转换http://www.aygfsteel.com/liver/archive/2009/06/04/279924.htmlLiverLiverWed, 03 Jun 2009 16:06:00 GMThttp://www.aygfsteel.com/liver/archive/2009/06/04/279924.htmlhttp://www.aygfsteel.com/liver/comments/279924.htmlhttp://www.aygfsteel.com/liver/archive/2009/06/04/279924.html#Feedback2http://www.aygfsteel.com/liver/comments/commentRss/279924.htmlhttp://www.aygfsteel.com/liver/services/trackbacks/279924.html 当初学习U程的时候把q?个状态记得比自己名字q熟?br /> q把q?个状态编成了一D凄惨而美丽的爱情故事
没想到如今却只能记得个大?br /> 真验证了“好记性不如烂W头”的真?br /> q是赶快回忆一下吧

先从囄开?br />

小的作下解释:
1、线E的实现有两U方式,一是承Threadc,二是实现Runnable接口Q但不管怎样Q当我们new了这个对象后Q线E就q入?span style="color: red">初始状?/strong>Q?br /> 2、当该对象调用了start()ҎQ就q入可运行状?/strong>Q?br /> 3、进入可q行状态后Q当该对象被操作pȝ选中Q获得CPU旉片就会进?span style="color: red">q行状?/strong>Q?br /> 4、进入运行状态后情况比较复杂了
    4.1、run()Ҏ或main()Ҏl束后,U程p?span style="color: red">l止状?/strong>Q?br />     4.2、当U程调用了自w的sleep()Ҏ或其他线E的join()ҎQ就会进?strong style="color: red">d状?/strong>Q该状态既停止当前U程Q但q?span style="color: red">不释放所占有的资?/span>Q。当sleep()l束或join()l束后,该线E进入可q行状态,l箋{待OS分配旉片;
    4.3、线E调用了yield()ҎQ意思是攑ּ当前获得的CPU旉片,回到可运行状态,q时与其他进E处于同{竞争状态,OS有可能会接着又让q个q程q入q行状态;
   4.4、当U程刚进入可q行状态(注意Q还没运行)Q发现将要调用的资源?font style="background-color: #cce8cf">synchronizaQ同步)Q获取不到锁标记Q将会立卌?span style="color: red">锁池状?/strong>Q等待获取锁标记Q这时的?/font>池里也许已经有了其他U程在等待获?font style="background-color: #cce8cf">?/font>标记Q这时它们处于队列状态,既先到先得)Q一旦线E获?font style="background-color: #cce8cf">?/font>标记后,p{入可q行状态,{待OS分配CPU旉片;
   4.5、当U程调用wait()Ҏ后会q入{待队列Q进入这个状态会释放所占有的所有资源,与阻塞状态不同)Q进入这个状态后Q是不能自动唤醒的,必须依靠其他U程调用notify()或notifyAll()Ҏ才能被唤醒(׃notify()只是唤醒一个线E,但我们由不能定具体唤醒的是哪一个线E,也许我们需要唤醒的U程不能够被唤醒Q因此在实际使用Ӟ一般都用notifyAll()ҎQ唤醒有所U程Q,U程被唤醒后会进入锁池,{待获取锁标记?br />
ȝ全部回忆了一遍JDK1.5在API的用上有了较好的改q,效率得到很大的提高,不过几个状态{换的原理q是一栗?br />
?#8230;…不过那一D凄惨而美丽的爱情故事q没完全惌v来,那天全部回忆h了在写吧?

Liver 2009-06-04 00:06 发表评论
]]>
Tomcat下配|JNDI数据库连接池q?/title><link>http://www.aygfsteel.com/liver/archive/2009/05/31/279309.html</link><dc:creator>Liver</dc:creator><author>Liver</author><pubDate>Sun, 31 May 2009 14:59:00 GMT</pubDate><guid>http://www.aygfsteel.com/liver/archive/2009/05/31/279309.html</guid><wfw:comment>http://www.aygfsteel.com/liver/comments/279309.html</wfw:comment><comments>http://www.aygfsteel.com/liver/archive/2009/05/31/279309.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/liver/comments/commentRss/279309.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/liver/services/trackbacks/279309.html</trackback:ping><description><![CDATA[<span style="color: #0000ff">一、配|JNDI数据?/span><br /> q一步有几种配置方式Q比如直接修改Tomcat/conf/server.xml文gQ但q样修改是全局的,个h不太喜欢q样的方式,本着的原则是能不全局׃全局Q以保证目能够量的影响到其他项目,量的q行修改。因此这里才用局部配|的方式?br /> 把下边的代码保存为context.xml文gQƈ攑ֈWebRoot/META-INF目录下?br /> <font style="background-color: #cce8cf"> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008000"><!--</span><span style="color: #008000"> Ҏ实际情况修改 </span><span style="color: #008000">--></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff"><</span><span style="color: #800000">Context</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />    </span><span style="color: #0000ff"><</span><span style="color: #800000">Resource<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #ff0000">name</span><span style="color: #0000ff">="jdbc/test"</span><span style="color: #ff0000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        type</span><span style="color: #0000ff">="javax.sql.DataSource"</span><span style="color: #ff0000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        driverClassName</span><span style="color: #0000ff">="com.mysql.jdbc.Driver"</span><span style="color: #ff0000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        url</span><span style="color: #0000ff">="jdbc:mysql://localhost:3306/test"</span><span style="color: #ff0000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        username</span><span style="color: #0000ff">="root"</span><span style="color: #ff0000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        password</span><span style="color: #0000ff">="root"</span><span style="color: #0000ff">/></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff"></</span><span style="color: #800000">Context</span><span style="color: #0000ff">></span></div> </font><br /> <span style="color: #0000ff">二、编辑web.xml文gQ在里边d如下内容</span><br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">    </span><span style="color: #0000ff"><</span><span style="color: #800000">servlet</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #0000ff"><</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">></span><span style="color: #000000">Test</span><span style="color: #0000ff"></</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #0000ff"><</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">></span><span style="color: #000000">com.nantian.jndi.Test</span><span style="color: #0000ff"></</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #0000ff"><</span><span style="color: #800000">init-param</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />            </span><span style="color: #0000ff"><</span><span style="color: #800000">param-name</span><span style="color: #0000ff">></span><span style="color: #000000">jndi</span><span style="color: #0000ff"></</span><span style="color: #800000">param-name</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />            </span><span style="color: #0000ff"><</span><span style="color: #800000">param-value</span><span style="color: #0000ff">></span><span style="color: #000000">java:comp/env/jdbc/test</span><span style="color: #0000ff"></</span><span style="color: #800000">param-value</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #0000ff"></</span><span style="color: #800000">init-param</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #0000ff"><</span><span style="color: #800000">load-on-startup</span><span style="color: #0000ff">></span><span style="color: #000000">0</span><span style="color: #0000ff"></</span><span style="color: #800000">load-on-startup</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />    </span><span style="color: #0000ff"></</span><span style="color: #800000">servlet</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />    </span><span style="color: #0000ff"><</span><span style="color: #800000">servlet-mapping</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #0000ff"><</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">></span><span style="color: #000000">Test</span><span style="color: #0000ff"></</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />        </span><span style="color: #0000ff"><</span><span style="color: #800000">url-pattern</span><span style="color: #0000ff">></span><span style="color: #000000">/Test</span><span style="color: #0000ff"></</span><span style="color: #800000">url-pattern</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />    </span><span style="color: #0000ff"></</span><span style="color: #800000">servlet-mapping</span><span style="color: #0000ff">></span></div> <br /> <br /> <span style="color: #0000ff">三、最后就是测试配|是否成功了</span><br /> 新徏一个Servlet文gTest.javaQ写下如下内?br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">package</span><span style="color: #000000"> com.nantian.jndi;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> java.sql.Connection;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> java.sql.SQLException;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> javax.naming.Context;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> javax.naming.InitialContext;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> javax.naming.NamingException;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> javax.servlet.ServletConfig;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> javax.servlet.ServletException;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> javax.servlet.http.HttpServlet;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> javax.sql.DataSource;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /> <img id="Codehighlighter1_370_780_Open_Image" onclick="this.style.display='none'; Codehighlighter1_370_780_Open_Text.style.display='none'; Codehighlighter1_370_780_Closed_Image.style.display='inline'; Codehighlighter1_370_780_Closed_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_370_780_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_370_780_Closed_Text.style.display='none'; Codehighlighter1_370_780_Open_Image.style.display='inline'; Codehighlighter1_370_780_Open_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">class</span><span style="color: #000000"> Test </span><span style="color: #0000ff">extends</span><span style="color: #000000"> HttpServlet </span><span id="Codehighlighter1_370_780_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.aygfsteel.com/Images/dot.gif" /></span><span id="Codehighlighter1_370_780_Open_Text"><span style="color: #000000">{<br /> <img id="Codehighlighter1_436_778_Open_Image" onclick="this.style.display='none'; Codehighlighter1_436_778_Open_Text.style.display='none'; Codehighlighter1_436_778_Closed_Image.style.display='inline'; Codehighlighter1_436_778_Closed_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_436_778_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_436_778_Closed_Text.style.display='none'; Codehighlighter1_436_778_Open_Image.style.display='inline'; Codehighlighter1_436_778_Open_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">void</span><span style="color: #000000"> init(ServletConfig config) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> ServletException </span><span id="Codehighlighter1_436_778_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.aygfsteel.com/Images/dot.gif" /></span><span id="Codehighlighter1_436_778_Open_Text"><span style="color: #000000">{<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        String jndi </span><span style="color: #000000">=</span><span style="color: #000000"> config.getInitParameter(</span><span style="color: #000000">"</span><span style="color: #000000">jndi</span><span style="color: #000000">"</span><span style="color: #000000">);<br /> <img id="Codehighlighter1_493_666_Open_Image" onclick="this.style.display='none'; Codehighlighter1_493_666_Open_Text.style.display='none'; Codehighlighter1_493_666_Closed_Image.style.display='inline'; Codehighlighter1_493_666_Closed_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_493_666_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_493_666_Closed_Text.style.display='none'; Codehighlighter1_493_666_Open_Image.style.display='inline'; Codehighlighter1_493_666_Open_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="color: #0000ff">try</span><span style="color: #000000"> </span><span id="Codehighlighter1_493_666_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.aygfsteel.com/Images/dot.gif" /></span><span id="Codehighlighter1_493_666_Open_Text"><span style="color: #000000">{<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />            Context ctx </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> InitialContext();<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />            DataSource ds </span><span style="color: #000000">=</span><span style="color: #000000"> (DataSource) ctx.lookup(jndi);<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />            Connection conn </span><span style="color: #000000">=</span><span style="color: #000000"> ds.getConnection();<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />            System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">q接获取成功Q?/span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">conn);<br /> <img id="Codehighlighter1_694_722_Open_Image" onclick="this.style.display='none'; Codehighlighter1_694_722_Open_Text.style.display='none'; Codehighlighter1_694_722_Closed_Image.style.display='inline'; Codehighlighter1_694_722_Closed_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_694_722_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_694_722_Closed_Text.style.display='none'; Codehighlighter1_694_722_Open_Image.style.display='inline'; Codehighlighter1_694_722_Open_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="color: #000000"> </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (NamingException e) </span><span id="Codehighlighter1_694_722_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.aygfsteel.com/Images/dot.gif" /></span><span id="Codehighlighter1_694_722_Open_Text"><span style="color: #000000">{<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /> <img id="Codehighlighter1_747_775_Open_Image" onclick="this.style.display='none'; Codehighlighter1_747_775_Open_Text.style.display='none'; Codehighlighter1_747_775_Closed_Image.style.display='inline'; Codehighlighter1_747_775_Closed_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_747_775_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_747_775_Closed_Text.style.display='none'; Codehighlighter1_747_775_Open_Image.style.display='inline'; Codehighlighter1_747_775_Open_Text.style.display='inline';" alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="color: #000000"> </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (SQLException e) </span><span id="Codehighlighter1_747_775_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.aygfsteel.com/Images/dot.gif" /></span><span id="Codehighlighter1_747_775_Open_Text"><span style="color: #000000">{<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="color: #000000"><br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div> <br /> q样可以了试了,q个例子q接的是mysql数据库,别忘记添加mysql驱动的jar包。部|工E,q行TomcatQ在服务器启动的时候就可以看到System.out.println(<span style="color: #000000">"</span><span style="color: #000000">q接获取成功Q?/span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">conn);</span>q条语句输出的信息了? <img src ="http://www.aygfsteel.com/liver/aggbug/279309.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/liver/" target="_blank">Liver</a> 2009-05-31 22:59 <a href="http://www.aygfsteel.com/liver/archive/2009/05/31/279309.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ī</a>| <a href="http://" target="_blank">Ϻ</a>| <a href="http://" target="_blank">޳</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˹</a>| <a href="http://" target="_blank">۳</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ϲ</a>| <a href="http://" target="_blank">¹</a>| <a href="http://" target="_blank">Ҷ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̰</a>| <a href="http://" target="_blank">崲</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͨ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʯ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">߶</a>| <a href="http://" target="_blank">ͨ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">½</a>| <a href="http://" target="_blank">ͨ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">ϻ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">޻</a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>