struts2框架 (自动保存的)(2)
</validator>
</validators>
(i).fieldexpression验证器:与expression基本相同。
(j).email验证器:验证输入的数据是否为一个email地址。
(k).url验证器:用于验证输入是否为一个合法的URL。
(l).conversion验证器:验输入的数据在类型转换的过程中是否没有出现错误。
(m).stringlenght验证器:验证输入的数据是否在指定的字符串长度这内。此验
证器有三个参数:minLenghtmaxLenght trim
(n).regex验证器:使用正则表达式验证输入的数据。此验证器有3个参数:
Expression:指定一个正则表达式。
caseSensitive:设置字符串是否按大小写的方式进行匹配。
trim:是否调用String类的trim()方法字符串首尾的空字符。
四》Struts2的拦截器
在用Struts2时我们发现,Struts2的Action与Servlet API进行了解耦,Action对请求的处理不依赖于Servlet API。此时的Action依赖于Struts2的拦截器,在Struts2框架中的表单提交,对象类型转换,文件上传,ModelDriven的操作,都离不开拦截器。拦截器作用与Action与Result的前前后后。Struts2的拦截器的实现思想是AOP面向切面编程,所以还可以动态的为对象植入新的功能。
下面就对Struts2拦截器的使用作一些简单的介绍:
1. 内置拦截器: Struts2框架中的拦截器配置在struts-default.xml中。可进入查看:
<interceptors>
<interceptorname="alias"class="com.opensymphony.xwork2.interceptor.AliasInterceptor"/>
<interceptorname="chain"class="com.opensymphony.xwork2.interceptor.ChainingInterceptor"/>
<interceptorname="debugging"class="org.apache.struts2.interceptor.debugging.DebuggingInterceptor"/>
<interceptorname="fileUpload"class="org.apache.struts2.interceptor.FileUploadInterceptor"/>
<interceptorname="i18n"class="com.opensymphony.xwork2.interceptor.I18nInterceptor"/>
<interceptorname="modelDriven"class="com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor"/>
<interceptorname="prepare"class="com.opensymphony.xwork2.interceptor.PrepareInterceptor"/>
<interceptorname="servletConfig"class="org.apache.struts2.interceptor
.ServletConfigInterceptor"/>
<interceptorname="timer"class="com.opensymphony.xwork2.interceptor.TimerInterceptor"/>
<interceptorname="token"class="org.apache.struts2.interceptor.TokenInterceptor"/>
<interceptorname="validation"class="org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor"/>
<interceptorname="checkbox"class="org.apache.struts2.interceptor.CheckboxInterceptor"/>
…………………………………………………
…………………………………………………… …………………………………………………
2. 拦截器的配置:在struts.xml中进行配置。
创建了一个拦截对象,需要对拦截器进行配置才可以应用到Action对象上。
其配置分为两步:
1).拦截器声明:
<interceptorname="authStack”
class="mon.interceptor.AuthorityInterceptor"/>
2).将拦截器应用到Action:
<actionname="main"class="loginAction"
method="loginSuccess">
使用<interceptor-ref>标签进行配置。 name属性用于指定所用的拦截器,与声明时的name对应。 <interceptor-ref name="authStack"/> <resulttype="dispatcher">/pages/main.jsp</result> </action> 拦截器的API:
在Struts2中无论是内置的拦截器对象还是自定义的拦截器,都需要实现包
com.opensymphony.xwork2.interceptor中的Interceptor接口。
Interceptor接口的定义如下:
public interface Interceptor extends Serializable{
Void destroy(); //用于销毁拦截器
Void init(); //用于初始化拦截器
String intercept(ActionInvocation invocation) throws Exception;//主要方法
}
只有调用了intercept()方法中invocation参数invoke()方法,才可以执行Action对象中的请求的处理方法。另处,AbstractInterceptor抽象类对Interceptor接口进行了实现。所以我们可以通过继承AbstractInterceptor对象来创建拦截器。
带有参数的拦截器
通过以上为Action配置了拦截器后,拦截器会对Action对象中的每一个业务请求都进行拦截。这样在没有必要会影响到性能,Struts2对此也给出了解办法。
MethodFilterInterceptor拦截器在AbstractInterceptor基础上进行了扩展,可以对Action中指定的方法进行拦截与排除Action对象中不需要拦截的方法。
a. 拦截指定方法:
<interceptor-ref name=”myInterceptor”>
<param name=”includeMethods”>save,update</param>
</interceptor-ref>
b. 排除指定方法:
<interceptor-ref name=”myInterceptor”>
<param name=”excludeMethods”>delete</param>
</interceptor-ref>
…… 此处隐藏:1145字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [小学教育]四年级综合实践活动课《衣物的洗涤》教
- [小学教育]2014半年工作总结怎么写
- [小学教育]20世纪外国文学专题综合试题及答案
- [小学教育]TS_1循环使用催化丙烯环氧化反应研究
- [小学教育]最实用的考勤签到表(上下班签到表)
- [小学教育]气候与生态建筑——以新疆民居为例
- [小学教育]二人以上股东有限责任公司章程参考样本
- [小学教育]2014届第一轮复习资料4.1,3美好生活的
- [小学教育]土方开挖、降水方案
- [小学教育]手绘儿童绘本《秋天的图画》(蜡笔)
- [小学教育]2002级硕士研究生卫生统计学考试试题
- [小学教育]环保装备重点发展目录
- [小学教育]金蝶K3合并报表培训教材
- [小学教育]岩浆岩试题及参考答案
- [小学教育]知之深爱之切学习心得
- [小学教育]第十二章 蛋白质的生物合成
- [小学教育]Chapter 2-3 Solid structure and basi
- [小学教育]市政道路雨季专项施工方案
- [小学教育]中国海洋大学2012-2013学年第二学期天
- [小学教育]教育心理学第3章-学习迁移
- 浅谈深化国企改革中加强党管企业
- 2006年中国病理生理学会学术活动安排
- 设计投标工作大纲
- 基于ARP的网络攻击与防御
- 2016届湖北省七市(州)教科研协作体高三
- Google_学术搜索及其检索技巧
- 2019-2020学年七年级地理下册6.3美洲教
- 城市道路可研报告
- 【名师指津】2012高考英语 写作基础技
- 6级知识点培训北京师范大学《幼儿智趣
- 注册会计师会计知识点:金融资产
- 新安装 500 kV 变压器介损分析与判断
- PS2模拟器PCSX2设置及使用教程.
- 医院药事管理与药剂科管理组织机构
- {PPT背景素材}丹巴的醉人美景,免费,一
- NAS网络存储应用解决方案
- 青海省西宁市六年级上学期数学期末考试
- 测量管理体系手册依据ISO10012:2003
- 洞子小学培养骨干教师工作计划
- 浅谈《牛津初中英语》的教材特点及教学




