《Java从入门到放弃》框架入门篇:Struts2的常用验证方式

时间:2023-02-03 13:08:04

感觉过了一个周末,人都懒得不要不要的,今天就来点简单的内容吧 - -,各位看官如果欲求不满的话,可以自行解决或再去宠幸其他“勃主”・・・《Java从入门到放弃》框架入门篇:Struts2的常用验证方式


struts2的验证方式主要有四种方式:

一、直接在功能方法中写验证代码(不要扔鸡蛋,这种办法确实算一种)

二、重写validate方法(注意这个方法会验证该类中所有的方法)

三、使用ValidateXxx方法(Xxx对应要验证的方法的方法名)

四、用struts2的验证框架(也就是使用配置文件的方式来实现,这种方法个人觉得应该属于放弃篇的内容,为什么呢?因为有的小伙伴前面三种方法都用得很Happy,一学这种方式就放弃了 - -)


不废话,上代码(这儿的上表示呈现给大伙瞅瞅,不代表我要直播“上”代码《Java从入门到放弃》框架入门篇:Struts2的常用验证方式):

一、直接在功能方法中写验证代码

这种比较简单,步骤也少,相信大伙一看就会。

    1.1)修改Action中需要数据验证的方法,我们还是拿add方法开刀吧,用熟了,顺手...

    // 添加    public String add() {
    //编号必须是六位的数字
    if(Integer.toString(singer.getSingerID()).length()!=6){
    this.addFieldError("err_id", "编号必须是6位的数字");
    }
    //姓名不能为空
    if("".equals(singer.getSingerName().trim())){
    this.addFieldError("err_name", "姓名不能为空");
    }
    
        System.out.println("调用了添加的方法!");
        System.out.println("编号:"+singer.getSingerID());
        System.out.println("姓名:"+singer.getSingerName());
        System.out.println("地区:"+singer.getArea());
        System.out.println("留言:"+msg);
        
        if(this.hasErrors()){
        return INPUT;
        }
        return "add";
    }

    1.2)修改struts.xml配置文件,加上返回结果为INPUT时的情况

    <!-- 通配符方式调用 -->    <action name="smng_*" class="com.pxy.action.Hello" method="{1}">        <result name="{1}">/WEB-INF/jsp/singer_{1}.jsp</result><result name="input">/WEB-INF/jsp/singer_{1}.jsp</result>    </action>

    1.3)修改JSP页面,加上错误显示信息(显示区域自己决定吧)

    <s:fielderror fieldName="err_id"></s:fielderror>    <s:fielderror fieldName="err_name"></s:fielderror>

    1.4)调用对应方法

    在地址栏输入:localhost:8888/strutsDemo/singeradd.action,最后的结果如下:

    《Java从入门到放弃》框架入门篇:Struts2的常用验证方式

今天时间有限,先写这么多吧,后面的内容,我们下回分解!!!


本文出自 “软件思维” 博客,请务必保留此出处http://softi.blog.51cto.com/13093971/1952433