• Struts2 数据校验之四兄弟


    现在是科技的时代,大多数人都在网上购物了, 我们都碰到过相同的问题,各大网站弄的那些各种各样的注册页面,相信大家都深有体会。

    有了这验证就很好的保证了我们的信息的准确性和安全性。

    接下来我给大家讲解一下用struts2怎么实现页面上简单的拦截。

    方法一:

    用execute()方法来实现

    1.0创建一个UserInfo类

    package cn.struts.entity;
    
    public class UserInfo {
        //用户名
        private String name;
        //密码
        private String pwd;
        //电话
        private String phone;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getPwd() {
            return pwd;
        }
    
        public void setPwd(String pwd) {
            this.pwd = pwd;
        }
    
        public String getPhone() {
            return phone;
        }
    
        public void setPhone(String phone) {
            this.phone = phone;
        }
    }

    2.0创建一个ExecuteAction继承ActionSupport

    package cn.struts.action;
    
    import cn.struts.entity.UserInfo;
    import com.opensymphony.xwork2.ActionSupport;
    
    public class ExecuteAction extends ActionSupport {
    
        //用户对象
        private UserInfo user;
        //确认密码
        private String okpwd;
    
        @Override
        public String execute() throws Exception {
            //判断用户名是否为空
            if (user.getName().length() == 0) {
                addFieldError("name", "用户名不能为空");
            }
            //判断密码是否为空
            if (user.getPwd().length() == 0) {
                addFieldError("pwd", "密码不能为空");
            }
            //判断电号码是否为空
            if (user.getPhone().length() == 0) {
                addFieldError("phone", "电话不能为空");
            }
            //判断两次输入的密码是否一致
            if(!user.getPwd().equals(okpwd)){
                addFieldError("userpwd", "两次密码不一致");
            }
            //这是最重要的判断
            //判断上面是否还存在没有通过的验证
            if (this.hasFieldErrors()) {
                return "input";
            }
            return "success";
        }
    
        public UserInfo getUser() {
            return user;
        }
    
        public void setUser(UserInfo user) {
            this.user = user;
        }
    
        public String getOkpwd() {
            return okpwd;
        }
    
        public void setOkpwd(String okpwd) {
            this.okpwd = okpwd;
        }
    }

    3.0编写struts.xml

      
                /success.jsp
                /index.jsp
     

    4.0编写页面

    index.jsp:

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%@taglib prefix="s" uri="/struts-tags" %>
    
    登陆页面
    
    
    
    用户名:
    电话:
    密码:
    确认密码:

    success.jsp:

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%@taglib prefix="s" uri="/struts-tags" %>
    
    
        成功页面
    
    
    欢迎你:
    

    效果如下:

    这些就是我们注册时常常碰到的提示!!!!

    et=UTF-8" language="java" %>
    <%@taglib prefix="s" uri="/struts-tags" %>
    
    登陆页面
    
    
    
    用户名:
    电话:
    密码:
    确认密码:

    效果图:

  • 相关阅读:
    windows jenkins
    微信小程序投票管理系统:打造智能、便捷的投票体验
    阿里云-AnalyticDB【分析型数据库】总结介绍
    MySQL 5.7.x--命令行自带帮助文档的使用,超级棒!!!
    java计算机毕业设计西安市城市绿地管理系统源程序+mysql+系统+lw文档+远程调试
    flutter系列之:做一个图像滤镜
    数据结构与算法 - 链表相关面试题
    Innodb如何实现表--上篇
    前向操作符重载自动微分实现
    插值查找算法(思路分析) [数据结构][Java]
  • 原文地址:https://blog.csdn.net/omygodvv/article/details/134477524