自定义校验规则:(了解)

在Struts2自定义校验规则:

1.实现一个Validator 接口.

2.一般开发中继承ValidatorSupport 或者 FieldValidatorSupport

* ValidatorSupport           :不是针对一个字段校验. 校验确认密码(与密码字段比较)

* FieldValidatorSupport :针对一个字段的校验.

步骤:

1.编写一个类继承FieldValidatorSupport

public void validate(Object obj) throws ValidationException {

// 获得字段名称

String name = getFieldName();

// 获得字段的值

Object value = getFieldValue(name, obj);

// 判断这个值

if(value instanceof Integer){

Integer i = (Integer) value;

if(i < 0 ){

addFieldError(name, obj);

}

}

}

2.注册校验器:在src下创建一个validators.xml

* 引入DTD:xwork核心包下有一个xwork-validator-config-1.0.dtd

* 在这个XML中进行配置:

<validators>

<validator name="aaa" class="cn.itcast.struts2.demo5.MyAgeValidator"></validator>

</validators>

struts2 自定义校验规则的更多相关文章

  1. [Vue]vee-validate的使用——自定义校验规则及校验message

    1.安装vee-validate npm install vee-validate --save 2.main.js里引用vee-validate插件 import Vue from 'vue' im ...

  2. 案例17-validate自定义校验规则校验验证码是否输入正确

    1 自定义校验规则代码 <script type="text/javascript"> //使用validate插件进行表单的校验 $(function(){ $(&q ...

  3. 案例16-validate自定义校验规则校验用户名是否存在

    1 知识点 2 register.jsp代码 注意自定义校验规则的时候,提交必须是同步的方式. <%@ page language="java" contentType=&q ...

  4. jqueryValidator自定义校验规则的一种方式(覆盖源码)

    1.自定义js文件:jqValid-extend.js 内容: function setDefaultValidate(){ $.extend(true, $.validator, { // 方法 m ...

  5. jqueryValidator自定义校验规则的一种方式(不覆盖源码)

    1.封装自定义验证方法-validate-methods.js /***************************************************************** j ...

  6. antdesign的input增加自定义校验规则

    rules: [ {required: true, message: '请输入姓名'}, {max: 16, message: '姓名过长'}, { validator: (rule, val, ca ...

  7. 9) drf JWT 认证 签发与校验token 多方式登陆 自定义认证规则反爬 admin密文显示

    一 .认证方法比较 1.认证规则图 django 前后端不分离 csrf认证 drf 前后端分离 禁用csrf 2. 认证规则演变图 数据库session认证:低效 缓存认证:高效 jwt认证:高效 ...

  8. jQuery EasyUI---validatebox 校验规则扩展

    EasyUI 的 validatebox 插件, 验证规则相对比较单一也比较少,如下. rules: { email:{ validator: function(value){ return ...? ...

  9. Jquery EasyUI远程校验,Jquery EasyUI多个自定义校验,EasyUI自定义校验

    >>>>>>>>>>>>>>>>>>>>>>>>> ...

随机推荐

  1. TEXTAREA自适应文字行数的多少

    <textarea rows=1 name=s1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight&qu ...

  2. iOS面试

    1.进程.线程的区别?2.“三次握手”是什么?具体细节,连接释放时需要几次“握手”,说出大概过程.3.TCP.UDP协议的区别?计算机网络分几层,以及TCP.Http协议各自工作在哪一层及相关细节.4 ...

  3. 在intellj idea下用sbt的坑

    version : SBT 0.13.7 intellij 14 新建SBT项目以后无法编译,总是显示 Can not resolve symble stackoverflow 给出了暂时的解决办法. ...

  4. JS组件系列——表格组件神器:bootstrap table(二:父子表和行列调序)

    前言:上篇 JS组件系列——表格组件神器:bootstrap table 简单介绍了下Bootstrap Table的基础用法,没想到讨论还挺热烈的.有园友在评论中提到了父子表的用法,今天就结合Boo ...

  5. 解决win8 下 eclipse 中文字体太小的问题

    一.把字体设置为Courier New  操作步骤:打开Elcipse,点击菜单栏上的“Windows”——点击“Preferences”——点击“Genneral”——点击“Appearance”— ...

  6. 如何在个人博客引擎 Hexo 中添加 Swiftype 搜索组件

    在您现在看到的我的博客站点,后台使用的是 Hexo 作为博客引擎,但是默认集成的搜索组件是进行 form 提交到 Google 进行搜索的,为了更好地体验,本文介绍如何在 Hexo 博客中集成 Swi ...

  7. 软件工程(FZU2015)赛季得分榜,第六回合

    目录 第一回合 第二回合 第三回合 第四回合 第五回合 第6回合 第7回合 第8回合 第9回合 第10回合 第11回合 积分规则 积分制: 作业为10分制,练习为3分制:alpha30分: 团队项目分 ...

  8. canvas弹动

    弹动,和缓动类似,不过是在终点前反复运动几次达到反弹的效果,具体的算法就是用目标点(target)和物体(mouse)的距离乘以系数累加至坐标上,这样就会有简单的弹动效果,但是一般的弹动效果都是慢慢变 ...

  9. Android开发:关于WebView

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://liangruijun.blog.51cto.com/3061169/647456 ...

  10. ob_start()

    ob_start()函数用于打开缓冲区 1.用于header()之前 ob_start(); //打开缓冲区 echo "Hellon"; //输出 header("lo ...