|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在性能方面,在windows平台下,.net可能是占强项,要是把.net放在sun开发的操作系统上去运行呢?根本就运行不了,.net对其它操作系统的支持也很弱,性能也可能比不上java。
假如人人但愿疾速开辟,一个相似Struts2如许的复杂便利的WEB框架必不成少。我们在开辟DEMO利用的仍是Struts1.2.8,并且没有不利用任何EL(表达式言语),招致页面呈现有数相似“<%=((Integer)request.getAttribute("xx")).intValue()%6%>”的代码。Struts1.x的FormBean的贫苦使得有部分同事间接利用request.getParameter(Stringarg),继而引进另外一种贫苦。诸云云类的成绩,在DEMO如许工夫紧急的项目凸显了Struts1.x对疾速开辟的力所不及。不外没举措,因为我们项目中的几个资深员工除Struts1.x外,对别的的WEB框架仿佛不年夜感乐趣。
言回正传,Interceptor(以下译为拦阻器)是Struts2的一个强无力的工具,有很多功效(feature)都是构建于它之上,如国际化、转换器,校验等。
甚么是拦阻器
拦阻器,在AOP(Aspect-OrientedProgramming)顶用于在某个办法或字段被会见之前,举行拦阻然后在之前或以后到场某些操纵。拦阻是AOP的一种完成战略。
在Webwork的中文文档的注释为——拦阻器是静态拦阻Action挪用的对象。它供应了一种机制可使开辟者能够界说在一个action实行的前后实行的代码,也能够在一个action实行前制止其实行。同时也是供应了一种能够提取action中可重用的部分的体例。
谈到拦阻器,另有一个词人人应当晓得——拦阻器链(InterceptorChain,在Struts2中称为拦阻器栈InterceptorStack)。拦阻器链就是将拦阻器按必定的按次联合成一条链。在会见被拦阻的办法或字段时,拦阻器链中的拦阻器就会按其之前界说的按次被挪用。
完成道理
Struts2的拦阻器完成绝对复杂。当哀求抵达Struts2的ServletDispatcher时,Struts2会查找设置文件,并依据其设置实例化绝对的拦阻器对象,然后串成一个列表(list),最初一个一个地挪用列表中的拦阻器,如所示。
图1 拦阻器挪用序列图
已有的拦阻器
Struts2已为您供应丰厚多样的,功效完全的拦阻器完成。人人能够到struts2-all-2.0.1.jar或struts2-core-2.0.1.jar包的struts-default.xml检察关于默许的拦阻器与拦阻器链的设置。
在本文利用是Struts2的最新公布版本2.0.1。必要下载的伴侣请点击以下链接:
http://apache.justdn.org/struts/binaries/struts-2.0.1-all.zip
<p>
但是一些大型开发或者是保密型比较高的项目都会用java,原因有2点,一:java是开源的,不怕别人留后门,偷我工具,.net就不一样了,保持微软的一向风格,源代码不公开 |
|