??xml version="1.0" encoding="utf-8" standalone="yes"?>蜜臀久久精品,久久亚洲综合,美腿丝袜亚洲一区http://www.aygfsteel.com/spec-second/zh-cnThu, 19 Jun 2025 14:03:42 GMTThu, 19 Jun 2025 14:03:42 GMT60关于几个电信斚w的概?/title><link>http://www.aygfsteel.com/spec-second/archive/2008/12/20/247540.html</link><dc:creator>BigOnion</dc:creator><author>BigOnion</author><pubDate>Sat, 20 Dec 2008 12:39:00 GMT</pubDate><guid>http://www.aygfsteel.com/spec-second/archive/2008/12/20/247540.html</guid><wfw:comment>http://www.aygfsteel.com/spec-second/comments/247540.html</wfw:comment><comments>http://www.aygfsteel.com/spec-second/archive/2008/12/20/247540.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/spec-second/comments/commentRss/247540.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/spec-second/services/trackbacks/247540.html</trackback:ping><description><![CDATA[<span style="font-family: Times New Roman;"><strong>BOSS<br /> </strong></span>电信业务q营支持pȝ(BOSS)Q面对客hl一的;面对电信q营商,它融合了业务支撑pȝ(BSS)与运营支撑系l?OSS)Q是一个综合的业务q营和管理^収ͼ同时也是真正融合了传lIP数据业务与移动增g务的l合理q_?br /> <br /> OSS/BSS是电信运营商的一体化、信息资源共享的支持pȝQ它主要ql管理、系l管理、计贏V营业、̎务和客户服务{部分组成,pȝ间通过l一 的信息ȝ有机整合在一赗它不仅能在帮助q营商制订符合自w特点的q营支撑pȝ的同时帮助确定系l的发展方向Q还能帮助用户制订系l的整合标准Q改善和 提高用户的服务水q?br /> <span style="font-family: Times New Roman;"><strong><br /> OSSQOperation-Support SystemQ:q行支持pȝ</strong></span><strong></strong><br /> q营支撑pȝ(OSS)Q是一个综合的业务q营和管理^収ͼ同时也是真正融合了传lIP数据业务与移动增g务的l合理q_。OSS是电信运营商的一 体化、信息资源共享的支持pȝQ它主要?strong>|络理</strong>?strong>pȝ理</strong>?strong>计费、营业、̎务和客户服务</strong>{部分组成,<strong>pȝ间通过l一的信息ȝ有机整合在一?/strong>。它不仅能在帮助q营商制订符合自w特点的q营支撑pȝ的同时帮助确定系l的发展方向Q还能帮助用户制订系l的整合标准Q改善和提高用户的服务水q?br /> <br /> <strong>BSSQ业务支持系l)</strong><br /> BSSpȝ的设计目标包括客户关pȝ理(CRMQ、业务供应链理QSCMQ,l营决策支持pȝQDSSQ?br /> <img src ="http://www.aygfsteel.com/spec-second/aggbug/247540.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/spec-second/" target="_blank">BigOnion</a> 2008-12-20 20:39 <a href="http://www.aygfsteel.com/spec-second/archive/2008/12/20/247540.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于Java的UDP支持http://www.aygfsteel.com/spec-second/archive/2008/12/11/245703.htmlBigOnionBigOnionThu, 11 Dec 2008 06:48:00 GMThttp://www.aygfsteel.com/spec-second/archive/2008/12/11/245703.htmlhttp://www.aygfsteel.com/spec-second/comments/245703.htmlhttp://www.aygfsteel.com/spec-second/archive/2008/12/11/245703.html#Feedback0http://www.aygfsteel.com/spec-second/comments/commentRss/245703.htmlhttp://www.aygfsteel.com/spec-second/services/trackbacks/245703.html
先立个标题在q里



BigOnion 2008-12-11 14:48 发表评论
]]>
需求杂?/title><link>http://www.aygfsteel.com/spec-second/archive/2008/09/15/228950.html</link><dc:creator>BigOnion</dc:creator><author>BigOnion</author><pubDate>Mon, 15 Sep 2008 00:10:00 GMT</pubDate><guid>http://www.aygfsteel.com/spec-second/archive/2008/09/15/228950.html</guid><wfw:comment>http://www.aygfsteel.com/spec-second/comments/228950.html</wfw:comment><comments>http://www.aygfsteel.com/spec-second/archive/2008/09/15/228950.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/spec-second/comments/commentRss/228950.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/spec-second/services/trackbacks/228950.html</trackback:ping><description><![CDATA[<p><span style="font-family: 微Y雅黑"><strong style="font-size: 18pt; color: #000080">一、需要需求的地方有:<br /> </strong></span><br /> 1、项目的范围Q?br /> 2、成本估;<br /> 3、预;<br /> 4、项目计划;<br /> 5、Y件设计和试Q?br /> 6、文档和培训手册Q?br /> <br /> <strong style="font-size: 18pt; color: #000080; font-family: 微Y雅黑">二、记录需求的方式有:<br /> </strong><br /> 1、Stackholder的需要(涉众的需要)Q?br /> 2、Y件特性;<br /> 3、Y仉求规|要求无二义性,完整Q一_可跟t,q且不含设计信息Q?br /> <br /> 它们的层ơ如?br /> <img height="216" alt="" src="http://www.aygfsteel.com/images/blogjava_net/spec-second/level-problem.jpg" width="290" border="0" /><br /> <br /> <span style="font-size: 24pt; font-family: 微Y雅黑"><strong style="font-size: 18pt; color: #000080">三、需求?br /> <br /> </strong></span></p> <li><strong>业务用例模型?/strong> 所期望pȝ的目标经常是要解决业务问题或通过提供增值服务开拓商业机会。业务用例将用例的概忉|展ؓ描述业务q程。业务用例模型(与业务用例规D明一P提供了一U评h期望pȝ范围的方式-Q有些部分可以自动化Q有些部分不能,有些部分可以通过更改业务q程来进行。这允许我们从一U业务观Ҏ评h用例模型的完整性,因ؓ每个pȝ用例必须支持一个或更多的业务用例? <li><strong>业务实体和领域模型?/strong> 大多数系l需要操作和展现业务信息。一个业务实体将一l相关信息字D表CZؓcR业务实体通过一个业务过E(例如业务用例Q被处理和操作,它们接着通过pȝ用例被自动化。所有业务用例及它们关系的dl成了领域模型,领域模型描述了问题域。每个系l用例将操作一些实体,q且实体通常被包括在多个pȝ用例中? <li><strong>业务规则?/strong> 今天Q系l的复杂性通常是由pȝ必须W合的业务规则的复杂性所D的结果。业务规则将被业务用例和pȝ用例来表C,q且可以是各UŞ式,决策表,计算规则Q决{树Q时间图Q描q哪些事件必d生在其它事g之前或之后,以及从中产生的过E)Q运法则,{等。在用例中描述业务规则通常会把用例规格弄得混ؕ。因此,它们通常是在单独的工件中被捕P或者是作ؓ用例规格的附加物? <li><strong>用户体验模型和情节串q图?/strong> 用户体验建模是捕LL面需求而不借助于画出屏q布局的一U便利方式,d屏幕布局的方式可能要p巨大的工作量Qƈ且非常可能发生变更。用户体验徏模将实际的用L面屏q抽象ؓ一个UMLc,其原型是«screen»。属性确定了用户在一个屏q上可以看到什么;操作定了用户在每个屏幕上可以做什么;q且兌关系定了航行\Uѝ用户体验情节串q图板是用户体验模型的子集,用于描述与系l用例有关的屏幕? <li><strong>补充规格说明?/strong> 补充规格说明描述了媄响多个用例的需求。例如,所有用例都服从权限控制Q审计跟t,个性化Q等{。补充需求实际上通常是技术方面的Qƈ且可以是兌于功能、可用性、可靠性、性能以及可支持性。它们通常被表CZؓ“pȝ应做 ...”形式的陈q语? <p><img height="244" alt="" src="http://www.aygfsteel.com/images/blogjava_net/spec-second/artifacts.jpg" width="490" border="0" /></p> <p> </p> </li> <img src ="http://www.aygfsteel.com/spec-second/aggbug/228950.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/spec-second/" target="_blank">BigOnion</a> 2008-09-15 08:10 <a href="http://www.aygfsteel.com/spec-second/archive/2008/09/15/228950.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>IBM定义的六个体pȝ构类?/title><link>http://www.aygfsteel.com/spec-second/archive/2008/09/15/228949.html</link><dc:creator>BigOnion</dc:creator><author>BigOnion</author><pubDate>Sun, 14 Sep 2008 23:36:00 GMT</pubDate><guid>http://www.aygfsteel.com/spec-second/archive/2008/09/15/228949.html</guid><wfw:comment>http://www.aygfsteel.com/spec-second/comments/228949.html</wfw:comment><comments>http://www.aygfsteel.com/spec-second/archive/2008/09/15/228949.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/spec-second/comments/commentRss/228949.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/spec-second/services/trackbacks/228949.html</trackback:ping><description><![CDATA[<ol> <li><strong>企业体系l构QEnterprise architectureQ?/strong>。企业架构师致力于将 IT 功能映射C务需要。该架构师全面负责企业的软g密集pȝQ包括多个应用程序之间的关系、应用程序之间共享的数据、应用程序的集成以及q行应用E序的基设施? <li><strong>应用E序体系l构QApplication architectureQ?/strong>。应用程序架构师致力于应用程序的设计Q以实现业务程的自动化q提供帮助用h行业务Q务的功能。该架构师的职责包括设计应用E序来满用L功能和服务质量要求,包括性能、可用性、可伸羃性、安全性和完整性。他们的职责q包括评估ƈ选择q行应用E序所必需的Y件和gQ以及用于开发应用程序的工具和方法? <li><strong>信息体系l构QInformation architectureQ?/strong>。信息架构师致力于多个应用程序所使用的数据,包括该数据的l构、完整性、安全性和可访问性。该架构师的职责包括设计、构建、测试、安装、操作和l护用于理该数据的pȝ。这些系l的设计必须考虑到数据要求,例如源、位|、完整性、可用性、性能和用寿命? <li><strong>基础设施体系l构QInfrastructure architectureQ?/strong>。基设施架构师致力于g和服务器软g的设计,包括服务器计机、存储、工作站、中间g、非应用E序软g、网l以及支持企业所需应用E序和业务流E的物理设施。该架构师的职责包括q些lg的评估和选择、用于验证设计和所选品的建模、模拟和试工作Q以及最l获得的基础设施的性能、可用性和可׾~性? <li><strong>集成体系l构QIntegration architectureQ?/strong>。集成架构师致力于支持现有应用程序、打包Y件品、网l和pȝ在企业中或企业之间协同工作的解决Ҏ设计。这些解x案可能用不同的技术、供应商、^台和计算cd? <li><strong>操作体系l构QOperations architectureQ?/strong>。操作架构师致力于管理企业所使用的基设施和应用程序的解决Ҏ设计。该架构师的职责包括为复杂信息系l的安装、操作、迁Ud理定义计划、策略和体系l构?</li> </ol> <p>它们之间的关pMؓQ?br /> <img height="83" alt="" src="http://www.aygfsteel.com/images/blogjava_net/spec-second/fig01.gif" width="396" border="0" /></p> <img src ="http://www.aygfsteel.com/spec-second/aggbug/228949.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/spec-second/" target="_blank">BigOnion</a> 2008-09-15 07:36 <a href="http://www.aygfsteel.com/spec-second/archive/2008/09/15/228949.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>WAS中的Session跟踪机制http://www.aygfsteel.com/spec-second/archive/2008/09/12/228589.htmlBigOnionBigOnionFri, 12 Sep 2008 06:46:00 GMThttp://www.aygfsteel.com/spec-second/archive/2008/09/12/228589.htmlhttp://www.aygfsteel.com/spec-second/comments/228589.htmlhttp://www.aygfsteel.com/spec-second/archive/2008/09/12/228589.html#Feedback0http://www.aygfsteel.com/spec-second/comments/commentRss/228589.htmlhttp://www.aygfsteel.com/spec-second/services/trackbacks/228589.html问题一QSession紊ؕ
按照servlet的规范,session id的cookie的名U应该ؓJSESSIONIDQ但q样可能出现如下问题Q如果我一个浏览器讉K了两个应用,应该有两个session存在Q而且他们的session id肯定是不同的。因此可能出现的问题是:代表session id的cookie会互相覆盖,D紊ؕ。在WAS中有个Session跟踪机制Q可以ؓ不同的Server讄不同的session id的cookie名,具体配置位置为:
应用E序服务?> server1 > 会话理 > Cookie >
问题二、在U用戯多,内存占用?br /> 很多pȝ会有q个问题Q默认session时?0分钟Q有很多用户d以后Q做了简单操作,然后直接关闭览器,D有很多的“无效”session存在Q而这些session所占用的内存,相当于垃圾,是变相的泄露。关于这个问题,WAS的解x案是Q限制在Usession的最大|如果过最大|则将最q最用的会话清除Q具体配|位|ؓQ?br /> 应用E序服务?> server1 > 会话理 >



BigOnion 2008-09-12 14:46 发表评论
]]>
建筑设计六个层次http://www.aygfsteel.com/spec-second/archive/2008/09/10/228153.htmlBigOnionBigOnionWed, 10 Sep 2008 07:08:00 GMThttp://www.aygfsteel.com/spec-second/archive/2008/09/10/228153.htmlhttp://www.aygfsteel.com/spec-second/comments/228153.htmlhttp://www.aygfsteel.com/spec-second/archive/2008/09/10/228153.html#Feedback0http://www.aygfsteel.com/spec-second/comments/commentRss/228153.htmlhttp://www.aygfsteel.com/spec-second/services/trackbacks/228153.html
  • siteQ地点,建筑所在物理地点,建筑用地的Ş状如何等Q?/li>
  • structureQ结构,钢结构?混凝土结构?
  • skinQ外表,建筑的外观,时尚、技术革命、信仰等都会表现在这里;Q?0q发生变化)
  • serviceQ服务,建筑的内脏,例如Q通信늼、电源线、排水、供暖、煤气;甉|也属于这一行列Q(7-15q变化?Q?/li>
  • space planQ空间规划,建筑内墙、天花板、地杉K的分布;Q看建筑用途,有些3q_有些30q变化)
  • stuffQ摆设,床、柜、电灯、电视等Q随旉可能变化Q?/li>

建筑设计师,最重要解决基本不变的东西,那就是structureQ结构?br />


BigOnion 2008-09-10 15:08 发表评论
]]>
架构模式http://www.aygfsteel.com/spec-second/archive/2008/09/10/228147.htmlBigOnionBigOnionWed, 10 Sep 2008 06:45:00 GMThttp://www.aygfsteel.com/spec-second/archive/2008/09/10/228147.htmlhttp://www.aygfsteel.com/spec-second/comments/228147.htmlhttp://www.aygfsteel.com/spec-second/archive/2008/09/10/228147.html#Feedback0http://www.aygfsteel.com/spec-second/comments/commentRss/228147.htmlhttp://www.aygfsteel.com/spec-second/services/trackbacks/228147.html 一、分层架构模式:
按照抽象层次的高低划分,是系l纵向划分,每个层次Ua为逻辑概念Q与物理无关Q该模式主要好处有:
  • 每个层次可以独立q行变化Q而互不媄响;
  • Ҏ在不同层ơ接Ux技术与变化Q?/li>
二、Facade架构模式Q?br /> 外部与一个子pȝ的通讯通过l一的门面进行,降低外部pȝ对内部实现的依赖?br />
三、Mediator架构模式Q?br /> 包装一pd对象Q系l)怺作用的方式,使得他们彼此不必互相了解Q达到松耦合

架构模式cd
一?From Mud to Structure?br /> 帮助架构师将pȝ合理划分Q避免Ş成一个对?span style="text-decoration: underline;">hQA sea of objectsQ。包括LayersQ分层)模式、BlackboardQ黑板)模式、Pipes/FiltersQ管?qo?/span>Q模式等?br />
二、分布系l(Distributed SystemsQ型
为分布式pȝ提供完整的架构设计,包括像BrokerQ中介)模式{?br />
三、hZ动(Interactive SystemsQ型
支持包含有hZ动介面的pȝ的架构设计,例子包括MVCQModel-View-ControllerQ模式、PACQPresentation-Abstraction-ControlQ模式等

四、Adaptable Systems?br /> 支持应用pȝ适应技术的变化、Y件功能需求的变化。如ReflectionQ反)模式、MicrokernelQ微核)模式{?br />




BigOnion 2008-09-10 14:45 发表评论
]]>
软g的架?/title><link>http://www.aygfsteel.com/spec-second/archive/2008/09/10/228145.html</link><dc:creator>BigOnion</dc:creator><author>BigOnion</author><pubDate>Wed, 10 Sep 2008 06:29:00 GMT</pubDate><guid>http://www.aygfsteel.com/spec-second/archive/2008/09/10/228145.html</guid><wfw:comment>http://www.aygfsteel.com/spec-second/comments/228145.html</wfw:comment><comments>http://www.aygfsteel.com/spec-second/archive/2008/09/10/228145.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/spec-second/comments/commentRss/228145.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/spec-second/services/trackbacks/228145.html</trackback:ping><description><![CDATA[<strong>两个要素</strong>Q元件划分和设计军_Q:<br /> 一、它是一个Y件系l从整体到部分的最高层ơ的划分Q?br /> 二、徏造一个系l所作出的最高层ơ的、以后难以更改的Q商业的和技术的军_Q?br /> <br /> <strong>架构的目标:<br /> </strong>一、可靠性(ReliableQ?br /> 二、安全行QSecureQ?br /> 三、可扩展性(ScalableQ?br /> 四、可定制化(CustomizableQ?br /> 五、可扩展性(ExtensibleQ?br /> 六、可l护性(MaintainableQ?br /> 七、客户体验(Customer ExperienceQ?br /> 八、市场时机(Time to MarketQ?br /> <br /> <strong>架构的种c?br /> </strong>一、逻辑架构、Y件系l中元g之间的关p;<br /> 二、物理架构、Y件元件是怎样攑ֈg上的Q?br /> 三、系l架构、系l的非功能性特征;<br /> <img src ="http://www.aygfsteel.com/spec-second/aggbug/228145.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/spec-second/" target="_blank">BigOnion</a> 2008-09-10 14:29 <a href="http://www.aygfsteel.com/spec-second/archive/2008/09/10/228145.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>WebLogic JTA Errorhttp://www.aygfsteel.com/spec-second/archive/2008/09/09/227846.htmlBigOnionBigOnionTue, 09 Sep 2008 00:43:00 GMThttp://www.aygfsteel.com/spec-second/archive/2008/09/09/227846.htmlhttp://www.aygfsteel.com/spec-second/comments/227846.htmlhttp://www.aygfsteel.com/spec-second/archive/2008/09/09/227846.html#Feedback0http://www.aygfsteel.com/spec-second/comments/commentRss/227846.htmlhttp://www.aygfsteel.com/spec-second/services/trackbacks/227846.html
@Transactional(readOnly = false, propagation = Propagation.REQUIRED)

When the transaction attibutes are Required on both sides,
I get the following error

javax.transaction.TransactionRolledbackException: Current server is the coordinator and transaction is not found. It was probably rolled back and forgotten already.
at weblogic.rjvm.ResponseImpl.unmarshalReturn(Respons eImpl.java:
195)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(C lusterableRemoteRef.java:
338)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(C lusterableRemoteRef.java:
252)

修改Z同Server名,则运行正常?br /> 具体原因Q查找中。。?br />
====================
具体原因已经查明Q参见了WebLogic的官Ҏ《Programming WebLogic JTA Release 10.0》第35,关于跨Domain JTA事务的局限描qͼ
The domains and all participating resources must have unique names. That is, you cannot 
have a JDBC data source, a server, or a domain with the same name as an object in another 
domain or the domain itself.




BigOnion 2008-09-09 08:43 发表评论
]]>
JBoss下CLOB.createTemporary抛出ClassCast的异?/title><link>http://www.aygfsteel.com/spec-second/archive/2008/08/26/224482.html</link><dc:creator>BigOnion</dc:creator><author>BigOnion</author><pubDate>Tue, 26 Aug 2008 06:35:00 GMT</pubDate><guid>http://www.aygfsteel.com/spec-second/archive/2008/08/26/224482.html</guid><wfw:comment>http://www.aygfsteel.com/spec-second/comments/224482.html</wfw:comment><comments>http://www.aygfsteel.com/spec-second/archive/2008/08/26/224482.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/spec-second/comments/commentRss/224482.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/spec-second/services/trackbacks/224482.html</trackback:ping><description><![CDATA[<span style="font-size: 10pt"><span style="font-size: 12pt"><span style="font-family: Times New Roman"><span style="font-family: 宋体"><span style="font-family: Impact"><span style="font-family: Arial">错误用法QCLOB.createTemporary(conn,....);<br /> 正确用法QCLOB.createTemporary(((WrappedConnection) con).getUnderlyingConnection() ,.....);<br /> 原理Q?br /> =================================================================<br /> if you are using jboss or any other AS that perform jdbc connection pooling , the classcast exception is caused by the "conn" object. (I had this problem using jboss4.0.1/oracle9.2).<br /> In jboss4 the Connection object retrieved by ConnectionFactory.makeconnection() is an instance of org.jboss.resource.adapter.jdbc.WrappedConnection class (or a DelegatingConnection in tomcat or products that use DBCP)<br /> =================================================================<br /> include jboss-common-jdbc-wrapper.jar with WrappedConnection class<br /> <br /> =============================?008-9-10?======================<br /> 最q看了看人家SpringQ老早处理了这U情况了Q具体见NativeJdbcExtractor接口<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%; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">interface</span><span style="color: #000000"> NativeJdbcExtractor {    <br />     </span><span style="color: #0000ff">boolean</span><span style="color: #000000"> isNativeConnectionNecessaryForNativeStatements();<br /> <br />     </span><span style="color: #0000ff">boolean</span><span style="color: #000000"> isNativeConnectionNecessaryForNativePreparedStatements();<br /> <br />     </span><span style="color: #0000ff">boolean</span><span style="color: #000000"> isNativeConnectionNecessaryForNativeCallableStatements();<br /> <br />     </span><span style="color: #008000">//</span><span style="color: #008000">呵呵Q就是这个方?/span><span style="color: #008000"><br /> </span><span style="color: #000000">    Connection getNativeConnection(Connection con) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException;<br /> <br />     Connection getNativeConnectionFromStatement(Statement stmt) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException;<br /> <br />     Statement getNativeStatement(Statement stmt) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException;<br /> <br />     PreparedStatement getNativePreparedStatement(PreparedStatement ps) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException;<br /> <br />     CallableStatement getNativeCallableStatement(CallableStatement cs) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException;<br /> <br />     ResultSet getNativeResultSet(ResultSet rs) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException;<br /> <br /> }</span></div> <br /> 来看看,Jboss的特定实玎ͼ<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%; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">class</span><span style="color: #000000"> JBossNativeJdbcExtractor </span><span style="color: #0000ff">extends</span><span style="color: #000000"> NativeJdbcExtractorAdapter {<br /> <br />     </span><span style="color: #0000ff">private</span><span style="color: #000000"> </span><span style="color: #0000ff">static</span><span style="color: #000000"> </span><span style="color: #0000ff">final</span><span style="color: #000000"> String WRAPPED_CONNECTION_NAME </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">org.jboss.resource.adapter.jdbc.WrappedConnection</span><span style="color: #000000">"</span><span style="color: #000000">;<br /> <br />     </span><span style="color: #0000ff">private</span><span style="color: #000000"> </span><span style="color: #0000ff">static</span><span style="color: #000000"> </span><span style="color: #0000ff">final</span><span style="color: #000000"> String WRAPPED_STATEMENT_NAME </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">org.jboss.resource.adapter.jdbc.WrappedStatement</span><span style="color: #000000">"</span><span style="color: #000000">;<br /> <br />     </span><span style="color: #0000ff">private</span><span style="color: #000000"> </span><span style="color: #0000ff">static</span><span style="color: #000000"> </span><span style="color: #0000ff">final</span><span style="color: #000000"> String WRAPPED_RESULT_SET_NAME </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">org.jboss.resource.adapter.jdbc.WrappedResultSet</span><span style="color: #000000">"</span><span style="color: #000000">;<br /> <br /> <br />     </span><span style="color: #0000ff">private</span><span style="color: #000000"> Class wrappedConnectionClass;<br /> <br />     </span><span style="color: #0000ff">private</span><span style="color: #000000"> Class wrappedStatementClass;<br /> <br />     </span><span style="color: #0000ff">private</span><span style="color: #000000"> Method getUnderlyingConnectionMethod;<br /> <br />     </span><span style="color: #0000ff">private</span><span style="color: #000000"> Method getUnderlyingStatementMethod;<br /> <br /> <br />     </span><span style="color: #008000">/**</span><span style="color: #008000"><br />      * This constructor retrieves JBoss JDBC wrapper classes,<br />      * so we can get the underlying vendor connection using reflection.<br />      </span><span style="color: #008000">*/</span><span style="color: #000000"><br />     </span><span style="color: #0000ff">public</span><span style="color: #000000"> JBossNativeJdbcExtractor() {<br />         </span><span style="color: #0000ff">try</span><span style="color: #000000"> {<br />             </span><span style="color: #0000ff">this</span><span style="color: #000000">.wrappedConnectionClass </span><span style="color: #000000">=</span><span style="color: #000000"> getClass().getClassLoader().loadClass(WRAPPED_CONNECTION_NAME);<br />             </span><span style="color: #0000ff">this</span><span style="color: #000000">.wrappedStatementClass </span><span style="color: #000000">=</span><span style="color: #000000"> getClass().getClassLoader().loadClass(WRAPPED_STATEMENT_NAME);<br />             </span><span style="color: #0000ff">this</span><span style="color: #000000">.getUnderlyingConnectionMethod </span><span style="color: #000000">=</span><span style="color: #000000"><br />                 </span><span style="color: #0000ff">this</span><span style="color: #000000">.wrappedConnectionClass.getMethod(</span><span style="color: #000000">"</span><span style="color: #000000">getUnderlyingConnection</span><span style="color: #000000">"</span><span style="color: #000000">, (Class[]) </span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />             </span><span style="color: #0000ff">this</span><span style="color: #000000">.getUnderlyingStatementMethod </span><span style="color: #000000">=</span><span style="color: #000000"><br />                 </span><span style="color: #0000ff">this</span><span style="color: #000000">.wrappedStatementClass.getMethod(</span><span style="color: #000000">"</span><span style="color: #000000">getUnderlyingStatement</span><span style="color: #000000">"</span><span style="color: #000000">, (Class[]) </span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />         }<br />         </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (Exception ex) {<br />             </span><span style="color: #0000ff">throw</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> DASEntityRuntimeException(ExceptionConstant.DAS_14101034,<br />                             </span><span style="color: #000000">"</span><span style="color: #000000">Could not initialize JBossNativeJdbcExtractor because JBoss API classes are not available</span><span style="color: #000000">"</span><span style="color: #000000">,<br />                             ex);<br />         }<br />     }<br /> <br /> <br />     </span><span style="color: #008000">/**</span><span style="color: #008000"><br />      * Retrieve the Connection via JBoss' <code>getUnderlyingConnection</code> method.<br />      </span><span style="color: #008000">*/</span><span style="color: #000000"><br />     </span><span style="color: #0000ff">protected</span><span style="color: #000000"> Connection doGetNativeConnection(Connection con) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException {<br />         </span><span style="color: #0000ff">if</span><span style="color: #000000"> (</span><span style="color: #0000ff">this</span><span style="color: #000000">.wrappedConnectionClass.isAssignableFrom(con.getClass())) {<br />             </span><span style="color: #0000ff">try</span><span style="color: #000000"> {<br />                 </span><span style="color: #0000ff">return</span><span style="color: #000000"> (Connection) </span><span style="color: #0000ff">this</span><span style="color: #000000">.getUnderlyingConnectionMethod.invoke(con, (Object[]) </span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />             }<br />             </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (InvocationTargetException ex) {<br />                 </span><span style="color: #0000ff">throw</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> DASEntityRuntimeException(ExceptionConstant.DAS_14101034,<br />                         </span><span style="color: #000000">"</span><span style="color: #000000">JBoss' getUnderlyingConnection method failed</span><span style="color: #000000">"</span><span style="color: #000000">, ex<br />                                 .getTargetException());<br />             }<br />             </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (Exception ex) {<br />                 </span><span style="color: #0000ff">throw</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> DASEntityRuntimeException(ExceptionConstant.DAS_14101034,<br />                                 </span><span style="color: #000000">"</span><span style="color: #000000">Could not access JBoss' getUnderlyingConnection method</span><span style="color: #000000">"</span><span style="color: #000000">,<br />                                 ex);<br />             }<br />         }<br />         </span><span style="color: #0000ff">return</span><span style="color: #000000"> con;<br />     }<br /> <br />     </span><span style="color: #008000">/**</span><span style="color: #008000"><br />      * Retrieve the Connection via JBoss' <code>getUnderlyingStatement</code> method.<br />      </span><span style="color: #008000">*/</span><span style="color: #000000"><br />     </span><span style="color: #0000ff">public</span><span style="color: #000000"> Statement getNativeStatement(Statement stmt) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException {<br />         </span><span style="color: #0000ff">if</span><span style="color: #000000"> (</span><span style="color: #0000ff">this</span><span style="color: #000000">.wrappedStatementClass.isAssignableFrom(stmt.getClass())) {<br />             </span><span style="color: #0000ff">try</span><span style="color: #000000"> {<br />                 </span><span style="color: #0000ff">return</span><span style="color: #000000"> (Statement) </span><span style="color: #0000ff">this</span><span style="color: #000000">.getUnderlyingStatementMethod.invoke(stmt, (Object[]) </span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />             }<br />             </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (InvocationTargetException ex) {<br />                 </span><span style="color: #0000ff">throw</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> DASEntityRuntimeException(ExceptionConstant.DAS_14101034,<br />                         </span><span style="color: #000000">"</span><span style="color: #000000">JBoss' getUnderlyingStatement method failed</span><span style="color: #000000">"</span><span style="color: #000000">, ex<br />                                 .getTargetException());<br />             }<br />             </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (Exception ex) {<br />                 </span><span style="color: #0000ff">throw</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> DASEntityRuntimeException(ExceptionConstant.DAS_14101034,<br />                                 </span><span style="color: #000000">"</span><span style="color: #000000">Could not access JBoss' getUnderlyingStatement method</span><span style="color: #000000">"</span><span style="color: #000000">,<br />                                 ex);<br />             }<br />         }<br />         </span><span style="color: #0000ff">return</span><span style="color: #000000"> stmt;<br />     }<br /> <br />     </span><span style="color: #008000">/**</span><span style="color: #008000"><br />      * Retrieve the Connection via JBoss' <code>getUnderlyingStatement</code> method.<br />      </span><span style="color: #008000">*/</span><span style="color: #000000"><br />     </span><span style="color: #0000ff">public</span><span style="color: #000000"> PreparedStatement getNativePreparedStatement(PreparedStatement ps) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException {<br />         </span><span style="color: #0000ff">return</span><span style="color: #000000"> (PreparedStatement) getNativeStatement(ps);<br />     }<br /> <br />     </span><span style="color: #008000">/**</span><span style="color: #008000"><br />      * Retrieve the Connection via JBoss' <code>getUnderlyingStatement</code> method.<br />      </span><span style="color: #008000">*/</span><span style="color: #000000"><br />     </span><span style="color: #0000ff">public</span><span style="color: #000000"> CallableStatement getNativeCallableStatement(CallableStatement cs) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException {<br />         </span><span style="color: #0000ff">return</span><span style="color: #000000"> (CallableStatement) getNativeStatement(cs);<br />     }<br /> <br />     </span><span style="color: #008000">/**</span><span style="color: #008000"><br />      * Retrieve the Connection via JBoss' <code>getUnderlyingResultSet</code> method.<br />      * <p>We access WrappedResultSet via direct reflection, since this class only<br />      * appeared in JBoss 3.2.4 and we want to stay compatible with at least 3.2.2+.<br />      </span><span style="color: #008000">*/</span><span style="color: #000000"><br />     </span><span style="color: #0000ff">public</span><span style="color: #000000"> ResultSet getNativeResultSet(ResultSet rs) </span><span style="color: #0000ff">throws</span><span style="color: #000000"> SQLException {<br />         </span><span style="color: #0000ff">if</span><span style="color: #000000"> (rs.getClass().getName().equals(WRAPPED_RESULT_SET_NAME)) {<br />             </span><span style="color: #0000ff">try</span><span style="color: #000000"> {<br />                 Method getUnderlyingResultSetMethod </span><span style="color: #000000">=</span><span style="color: #000000"> rs.getClass().getMethod(</span><span style="color: #000000">"</span><span style="color: #000000">getUnderlyingResultSet</span><span style="color: #000000">"</span><span style="color: #000000">, (Class[]) </span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />                 </span><span style="color: #0000ff">return</span><span style="color: #000000"> (ResultSet) getUnderlyingResultSetMethod.invoke(rs, (Object[]) </span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />             }<br />             </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (InvocationTargetException ex) {<br />                 </span><span style="color: #0000ff">throw</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> DASEntityRuntimeException(ExceptionConstant.DAS_14101034,<br />                         </span><span style="color: #000000">"</span><span style="color: #000000">JBoss' getUnderlyingResultSet method failed</span><span style="color: #000000">"</span><span style="color: #000000">, ex<br />                                 .getTargetException());<br />             }<br />             </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (Exception ex) {<br />                 </span><span style="color: #0000ff">throw</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> DASEntityRuntimeException(ExceptionConstant.DAS_14101034,<br />                                 </span><span style="color: #000000">"</span><span style="color: #000000">Could not access JBoss' getUnderlyingResultSet method</span><span style="color: #000000">"</span><span style="color: #000000">,<br />                                 ex);<br />             }<br />         }<br />         </span><span style="color: #0000ff">return</span><span style="color: #000000"> rs;<br />     }<br /> <br /> }</span></div> 看来Spring中还是有不少l验ȝ?br /> </span></span></span></span></span></span> <img src ="http://www.aygfsteel.com/spec-second/aggbug/224482.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/spec-second/" target="_blank">BigOnion</a> 2008-08-26 14:35 <a href="http://www.aygfsteel.com/spec-second/archive/2008/08/26/224482.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>