快速业务通道

利用Spring框架改进J2EE编程 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
[checksum error]: " + csf.getMessage()); } catch (CommConnectFailure cf) { throw new SoftenedProtocolException( "protocol error [comm failure]: " + cf.getMessage()); } catch (CommPacketSequenceFault psf) { throw new SoftenedProtocolException( "protocol error [message sequence error]" + psf.getMessage()); } return o; } }

利用Spring框架改进J2EE编程(7)

时间:2011-02-12 BEA Peter Braswell

通过实现Spring MethodInterceptor接口并将该类插入Spring系统(稍后我们将进行讨论),我们将通过MethodInvocation参数获得实际的目标方法。这样就能提取我们想要的真正对象。请记住,我们更改了被调用者看作SensorIfc的接口,该接口使目标对象得以实现ProtocolAdapterIfc。我们这样做是为了简化调用,更是为了消除所有的已检查异常。该******只调用用来捕获可能抛出的任何已检查异常、并用SoftenedProtocolException将它们重新包装的目标方法。实际上,我们只重新包装消息,但要做到心中有数。SoftenedProtocolException扩展了RuntimeException,后者无疑是一个未检查异常。该操作的最终结果是应用程序开发人员不必处理任何已检查异常。如果他们真想处理异常,他们只需(非强制地)处理一个:SoftenedProtocolException。不错吧!

那么,如何才能让Spring完成这一切呢?答案就是要有正确的配置文件。我们现在就来看一看该配置文件,并了解其工作原理:

<!-- TARGET OBJECT --> <bean id="protocolAdapter" class="yourco.project.comm.CarrierPigeon"> <property name="isTired"> <value>true</value> </property&gl; <property name="canFlapWings"> <value>true</value> </property&gl; </bean&gl; <!-- INTERCEPTOR --> <bean id="sensorInterceptor" class="yourco.project.springsupport. SensorInvocationInterceptor"/> <!--WIRE EVERYTHING UP, HAND BACK TO THE USER--> <bean id="temperatureSensorOne" class="org.springframework.aop.framework. ProxyFactoryBean"> <property name="proxyInterfaces"> <value> yourco.project.interfaces.SensorIfc </value> </property> <property name="target"> <ref local="protocolAdapter"/> </property> <property name="interceptorNames"> <list> <value>sensorInterceptor</value> </list> </property> </bean>

利用Spring框架改进J2EE编程(8)

时间:2011-02-12 BEA Peter Braswell

我们逐节看这些代码时,可以看到它比我们前面看到的Spring配置文件要稍微复杂一些。“TARGET OBJECT”注释下面的第一节指定了要作为调用的目标对象的类。还记得拦截器曾将一个参数传入其中来表示目标对象吗?这就是其工作原理。基于该参数,Spring现在知道要将哪个对象传递进来。“INTERCEPTOR”下面的代码节是在目标方法之前调用的类。此时,如果目标类抛出已检查异常,要开始处理异常,并进行软化。Spring将它与目标类相关联。最后一节是将各种元素联系起来。用户要请求的bean位于bean键temperatureSensorOne下。ProxyFactoryBean将生成并返回一个代理类,它用来实现yourco.project.interfaces.SensorIfc接口。目标对象当然就是protocolAdapter bean,它由yourco.proje

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号