`

BaseValidator

阅读更多
import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;

public abstract class BaseValidator {
    
    protected static Messages getMessages(ServletRequestAttributes servletRequestAttributes) {

        Messages messages = 
            (Messages) servletRequestAttributes.getAttribute(
                    FieldValidationConstants.MESSAGES, 
                    RequestAttributes.SCOPE_REQUEST);
        
        if (messages == null) {
            messages = new Messages();
        }
        
        return messages;
    }
    
    /**
     * Add field error message to request attribute 
     * @param fieldErrorParam    Field error tag parameter
     * @param fieldErrorMessage  Field error message
     */
    protected static void addFieldErrorMessage(String fieldErrorParam, String fieldErrorMessage) {
        
        if (!Util.isEmpty(fieldErrorParam) && !Util.isEmpty(fieldErrorMessage)) {
            ServletRequestAttributes servletRequestAttributes = 
                (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
            
            Messages messages = BaseValidator.getMessages(servletRequestAttributes);
            
            messages.addFieldErrorMessage(fieldErrorParam, fieldErrorMessage);
            
            servletRequestAttributes.setAttribute(FieldValidationConstants.MESSAGES, 
                    messages, RequestAttributes.SCOPE_REQUEST);
        }
    }
}

 

分享到:
评论

相关推荐

    ASP.NET 服务器控件之实现验证控件

    在ASP.NET 2.0中,有五种内置的验证控件,它们都是从`System.Web.UI.WebControls.BaseValidator`基类派生出来的: 1. **RequiredFieldValidator**:这个控件用于确保输入字段不为空。如果用户没有在关联的控件中...

    .net winform 数据验证框架

    例如,我们可以创建一个名为`BaseValidator`的类,包含验证失败时抛出的异常信息和错误消息。 4. **集成到控件**:将验证类与控件关联,可以通过控件的Tag属性存储验证对象,或者使用依赖注入等设计模式。当控件的...

    ASP.NET中WebValidate验证控件

    开发者可以通过继承`System.Web.UI.WebControls.BaseValidator`类,并重写`EvaluateIsValid`方法来创建自己的验证控件。在这个方法中,你可以编写任何必要的代码来检查用户输入是否有效。 以下是一个简单的...

    易用又灵活的js验证框架

    该框架的核心是各种验证器组件,如BaseValidator、EmailValidator、RequiredValidator、NumValidator和IntValidator等。每个验证器都负责特定类型的验证任务,如: - **BaseValidator**:基础验证器,提供验证框架...

    android-edittext-validator-master.zip

    首先,项目中可能包含自定义验证器类(如EmailValidator, PhoneNumberValidator等),这些类通常继承自Android的Validator接口或BaseValidator类。验证器会实现validate方法,该方法负责检查输入的字符串是否符合...

    ASP.NET Web form验证入门

    这需要创建一个继承自BaseValidator的类,重写EvaluateIsValid方法并添加自定义的验证逻辑。 六、验证总结 通过合理使用ASP.NET提供的验证控件和策略,可以有效地提高应用程序的安全性和用户体验。理解并掌握这些...

    ASP.NET自定义验证控件

    1. **定义验证控件类**:继承自System.Web.UI.WebControls.BaseValidator类,这是所有ASP.NET验证控件的基类。通过这个基类,我们可以访问到验证控件的核心属性和方法,如ControlToValidate、Text、ErrorMessage等。...

    asp.net验证控件 ppt讲解

    验证控件的层次结构基于BaseValidator基类,其中包括一系列具体验证控件,如RequiredFieldValidator、CompareValidator、RegularExpressionValidator、RangeValidator和CustomValidator等。BaseCompareValidator则是...

    自定义验证控件 JS+.net

    在.NET中,可以创建自定义验证器类,继承自`System.Web.UI.WebControls.BaseValidator`,重写`EvaluateIsValid`方法实现业务逻辑。这样,即使客户端验证被绕过,服务器仍能确保数据的正确性。 5. **整合前后端**:...

    构建Flex自动验证框架

    6. **自定义验证类**:如果内置的验证器无法满足需求,开发者可以创建自定义验证类,继承自BaseValidator或其他验证基类,并覆盖其validate方法。 7. **数据绑定**:Flex支持数据绑定,允许视图和模型之间的双向...

    .net 验证码控件

    在.NET中,自定义验证码控件可以通过继承`System.Web.UI.WebControls.WebControl`或`System.Web.UI.WebControls.BaseValidator`类来实现。你可以控制验证码的样式、颜色、字体、大小等外观属性,同时实现验证逻辑。...

    asp.net2.0带语音的验证码源码

    1. **创建自定义验证控件**:创建一个新的类继承自`System.Web.UI.WebControls.BaseValidator`,并实现验证码生成、图像绘制和语音合成的方法。 2. **生成验证码**:生成一个随机字符串,长度通常在4到6位之间,确保...

    超强的ASP.NET自定义客户端验证控件

    1. **定义验证控件**: 创建一个继承自`System.Web.UI.WebControls.BaseValidator`的类,该基类提供了验证控件的基本结构。你需要重写一些关键方法,如`EvaluateIsValid`,用于执行实际的验证逻辑。 2. **客户端脚本...

    数据校验的一个很好的程序

    9. `BaseValidator.cs`: 这个文件可能代表验证控件的基类,为所有ASP.NET验证控件提供公共属性和方法。它可能包括了验证失败时的行为设置,以及如何在客户端和服务器端执行验证等。 10. `IBaseValidatorAccessor.cs...

    asp.net验证提示美化效果

    这涉及继承`BaseValidator`类,重写`CreateChildControls`和`Render`方法,以实现所需的UI。 4. **使用jQuery和AJAX**:结合使用jQuery和ASP.NET AJAX库可以创建动态且美观的验证提示。例如,使用`jQuery.validator...

    RequireFieldValidator限制空字段

    - **自定义验证**:通过继承`BaseValidator`类并重写`Validate`方法,可以创建自定义的验证控件,满足特殊需求。 4. **与客户端验证的结合**: ASP.NET提供了一种机制,使得验证控件可以同时在服务器端和客户端...

    北大青鸟ACCP5.0 ASP.NET第6章课件

    验证控件的层次结构基于BaseValidator,包括RequiredFieldValidator、CompareValidator、RegularExpressionValidator、RangeValidator和CustomValidator等具体类。ValidationSummary控件则用于汇总所有验证错误。 ...

    c#实例-如何使用错误提醒控件

    6. **自定义验证**:除了内置的验证控件,还可以通过继承`BaseValidator`类创建自定义验证控件,实现更复杂的验证规则。 总的来说,掌握如何在C#中使用错误提醒控件对于提升应用程序的质量至关重要。通过合理布局和...

    TextBoxValidator 验证TextBox 扩展TextBox属性

    TextBoxValidator的核心概念在于创建一个自定义验证器类,该类可以继承自System.Windows.Forms.ControlValidator或System.Web.UI.WebControls.BaseValidator。此类将包含一系列方法和属性,用于设置验证规则、执行...

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    4.5.3 BaseValidator类 4.5.4 RequiredFieldValidator控件 4.5.5 RangeValidator控件 4.5.6 CompareValidator控件 4.5.7 RegularExpressionValidator控件 4.5.8 CustomValidator控件 4.5.9 ...

Global site tag (gtag.js) - Google Analytics