`
40020072
  • 浏览: 72742 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于struts2验证框架中的fieldexpression验证,非常灵活。

阅读更多

例如判断输入的密码和重复输入的密码是否相同:

<field-validator type="fieldexpression">
            <param name="expression">
                (user.confirmPassword.equals(user.password))
            </param>

</field-validator>

 

fieldexpression方法的源代码在
com.opensymphony.xwork2.validator.validators.FieldExpressionValidator.class

 

public class FieldExpressionValidator extends FieldValidatorSupport {

    private String expression;


    public void setExpression(String expression) {
        this.expression = expression;
    }

    public String getExpression() {
        return expression;
    }

    public void validate(Object object) throws ValidationException {
        String fieldName = getFieldName();

        Boolean answer = Boolean.FALSE;
        Object obj = null;

        try {
            obj = getFieldValue(expression, object);
        } catch (ValidationException e) {
            throw e;
        } catch (Exception e) {
            // let this pass, but it will be logged right below
        }

        if ((obj != null) && (obj instanceof Boolean)) {
            answer = (Boolean) obj;
        } else {
            log.warn("Got result of " + obj + " when trying to get Boolean.");
        }

        if (!answer.booleanValue()) {
            addFieldError(fieldName, object);
        }
    }
}

 可以看出参数expression是一段代码的字符串,然后判断返回值boolean,true的话通过验证,否则不通过。

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    struts2验证框架参数

    在Struts2中,验证规则通常定义在XML配置文件中,通常是与特定Action关联的`validation.xml`文件内。这些规则通过一系列预定义的验证器来实现,每个验证器都有其独特的功能和参数,下面将详细介绍其中几种常见的验证...

    Struts2验证框架的配置及validation.xml常用的验证规则

    通过上述介绍,我们可以看到Struts2的验证框架提供了一种灵活且强大的方式来确保数据的有效性。开发者可以根据具体需求选择合适的验证器类型,并通过参数设置来定制验证规则,从而提高Web应用的质量和安全性。

    struts验证框架-validation的验证框架

    下面将详细介绍Struts验证框架中的各种验证类型及其应用场景。 ### 枚举类型:ValidatorType `ValidatorType`是Struts验证框架中预定义的一系列验证类型的集合,包括但不限于: - **Field校验字段**:针对单个...

    struts2 校验框架

    本文将通过一个具体的示例——`LoginAction-validation.xml`配置文件,来详细解析Struts2中的校验框架。 #### 二、Struts2校验框架概述 Struts2的校验框架基于Apache Commons Validator,提供了多种预定义的验证器...

    验证框架,框架,资源

    ### 验证框架:Struts2验证机制详解 #### Struts2框架简介 Struts2是基于MVC(Model-View-Controller)设计模式的一种Java Web应用开发框架,它简化了Web应用程序的开发过程,提供了丰富的插件支持,并且易于与...

    struts2_2校验框架

    根据给定的信息,我们可以深入探讨Struts2中的验证...以上就是关于Struts2中的验证框架的一些基本知识点介绍。通过这些验证方式,开发者可以有效地确保用户输入的数据满足业务需求,从而提高Web应用的质量和稳定性。

    struts2校验器类型详解

    通过对Struts2框架内建校验器的介绍,我们可以看到Struts2提供了一系列强大而灵活的数据校验工具。无论是简单的非空校验还是复杂的类型转换和模式匹配,这些校验器都能满足开发者的不同需求。合理利用这些校验器不仅...

    深入浅出Struts2(附源码)

    跟随作者一道深入Struts 2,聆听大量来之不易的经验之谈,你对Struts 2开发框架的理解和应用水平都将更上一层楼。本书适合Java Web 程序员阅读和参考 第1章 Model 2应用程序 1 1.1 Model 2概览 1 1.2 带servlet...

    struts笔记

    Struts2中的错误处理机制主要通过`addFieldError`方法实现,该方法用于在表单验证失败时添加错误信息到用户界面。例如: ```java // 添加字段级别的错误信息 addFieldError("username", "用户名不能为空"); ``` 这...

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    8.3.9 expression和fieldexpression验证程序 161 8.3.10 conversion验证程序 164 8.3.11 visitor验证程序 166 8.4 编写自定义的验证程序 173 8.4.1 注册 176 8.4.2 示例 177 8.5 利用Validateable接口实现编程验证 ...

    判断两次密码输入是否相同的校验器

    - **Struts 2**:作为MVC框架的基础。 - **Java**:作为后端语言。 - **XML**:用于配置文件。 - **JSP**:作为前端页面展示技术。 #### 三、核心代码解析 ##### 1. CheckAction 类(`CheckAction.java`) 该类继承...

Global site tag (gtag.js) - Google Analytics