zoukankan      html  css  js  c++  java
  • 关于validate

    ActionErrors validate(...){

    ActionErrors errors=new ActionErrors()

    if("".equals(userName)||userName=null){

        message=new ActionMessage("errors.name");

        errors.add("userName",message);

    }

    if("".equals(pwd)||pwd=null){

        message=new ActionMessage("errors.pwd");

        errors.add("pwd",message);

    }

    return errors

    }

    =================================================================

            以上的ActionErrors类似与一个Map,存放着若干个ActionMessageActionError已不推荐使用)对象,每个ActionMessage都有个key,类似于一个Cookie,每个ActionMessage都含有一小段验证错误信息。

          ActionErrors继承与ActionMessages,其中封装了若干条错误信息,他含有一个方法add(String property,ActionMessage message)

          ActionMessage存放的错误信息为一个String,且来源于资源文件。

      在new一个ActionMessage来封装异常信息时,存放的是key(资源文件中的key,keyvalue在资源文件中)

        struts提供了<html:errors/>标签来显示整个ActionErrors的错误信息。但要在struts-config.xml中设置<action ... input="reg.jsp">(input属性指定校验出错时所跳转的页面)

        ActionErrors对象为null或者其中没有ActionMessage,则验证成功-->执行execute方法。

        ActionErrors对象中有至少一个ActionMessage,则失效

    -->跳转到input指定的jsp页面。

        <html:errors/>显示所有的错误信息,可以在jsp页面中用<html:errors property="userName"/>来配置显示userName的错误信息。

    出错显示的步骤:

    <html:errors property="userName"/>

    1-->查找errors.add("userName",message);中的userName得到相应的message对象

    2-->message=new ActionMessage("errors.name");得到keyerrors.name

    3-->在资源文件中查找keyerrors.name所对应的value

    4-->在出错页面上显示value值。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    stylus使用文档总结:选择器+变量+插值+运算符+混合书写+方法
    vue项目配置使用flow类型检查
    项目中存在的问题
    坚持
    Enum枚举类使用集合
    JS 随机数字抽签
    【转】Basic C# OOP Concept
    EF异常:WebForm、Console、Winform层不引入EF报错
    EF异常:“System.InvalidOperationException”类型的未经处理的异常在 mscorlib.dll 中发生
    WebServices中使用Session
  • 原文地址:https://www.cnblogs.com/shipeng22022/p/4614157.html
Copyright © 2011-2022 走看看