Struts2自定义拦截器
2016-09-07 22:23
337 查看
a、定义一个类,继承AbstractInterceptor或者实现Interceptor
b、在struts.xml中进行定义
c、在动作中使用
b、在struts.xml中进行定义
c、在动作中使用
import com.opensymphony.xwork2.validator.ValidationException; import com.opensymphony.xwork2.validator.validators.FieldValidatorSupport; //验证密码的强度 public class StrongPasswordValidator extends FieldValidatorSupport { //object:实际上就是动作类 public void validate(Object object) throws ValidationException { String fieldName = getFieldName();//得到要验证的字段名 String fieldValue = (String) getFieldValue(fieldName, object); if(StringUtils.isNotEmpty(fieldValue)){ //有值时再做强度验证 if(!isPasswordStrong(fieldValue)){ addFieldError(fieldName, object); } } } private static final String GROUP1 = "abcdefghijklmnopqrstuvwxyz"; private static final String GROUP2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; private static final String GROUP3 = "0123456789"; protected boolean isPasswordStrong(String password) { boolean ok1 = false;//有一个小写字母就为true boolean ok2 = false;//有一个大写字母就为true boolean ok3 = false;//有一个数字就为true int length = password.length(); for(int i=0;i<length;i++){ if(ok1&&ok2&&ok3) break; String character = password.substring(i,i+1); if(GROUP1.contains(character)){ ok1 = true; continue; } if(GROUP2.contains(character)){ ok2 = true; continue; } if(GROUP3.contains(character)){ ok3 = true; continue; } } return ok1&&ok2&&ok3; } }
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator Definition 1.0//EN" "http://struts.apache.org/dtds/xwork-validator-definition-1.0.dtd"> <validators> <validator name="strong" class="com.itheima.validatiors.StrongPasswordValidator"/> </validators>
相关文章推荐
- Struts2 自定义拦截器
- Struts2第七篇【介绍拦截器、自定义拦截器、执行流程、应用】
- JAVAWEB开发之Struts2详解(三)——Struts2信息国际化、自定义拦截器以及Struts2文件上传和下载详解
- Struts2自定义拦截器
- struts2自定义拦截器
- Struts2中自定义拦截器
- Struts2自定义拦截器
- struts2如何自定义拦截器
- 29.struts2_自定义拦截器
- Struts2(五)自定义拦截器
- Struts2自定义拦截器实例—登陆权限验证
- struts2的开发(自定义拦截器)
- 【java学习之旅】——Struts2自定义拦截器三部曲
- Struts2的标签及其自定义token拦截器的定义及配置
- 框架学习之Struts2 第五节 自定义拦截器
- Struts2自定义拦截器实例—登陆权限验证
- struts2自定义拦截器和方法拦截器
- Struts2中自定义拦截器导致Action注入参数丢失
- Struts2自定义拦截器实例—登陆权限验证
- 使用struts2自定义拦截器,要引入defaultStack