zoukankan      html  css  js  c++  java
  • Struts2验证框架实例

      今天写了个Struts验证框架的实例,总算把验证框架弄清楚了。

      上一篇Struts实例的action没有继承ActionSupport类,虽然也可以实现action的功能,但是却不能应用Struts提供的其他

    功能。

    1、应用验证框架时action必须extends ActionSupport类。

    public class LoginAction extends ActionSupport{ // 继承ActionSupport类
    
        private static final long serialVersionUID = 1L;
        //User user=new User();
        User user;  // JavaBean 不需要实例化,自动赋值
        public User getUser() {
            return user;
        }
    
        public void setUser(User user) {
            this.user = user;
        }
    
        public String execute(){
            if("111".equals(user.getUsername())){
                return "success";
            }
            return "input";
        }
    
    }

     2、可以override validate()方法,也可以用xml配置文件。

    在这里应用xml配置文件进行验证。配置文件必须和验证的action放在同一包目录下。

    3、LoginAction-validation.xml配置

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE validators PUBLIC   
    "-//OpenSymphony Group//XWork Validator 1.0.2//EN" 
    "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd"> 
    <validators>  
        <field name="user.username">  
            <field-validator type="requiredstring">  
                <message>请输入姓名</message>  
            </field-validator>  
        </field>  
          
        <field name="user.password">  
            <field-validator type="requiredstring">  
                 <message>请输入密码</message>  
            </field-validator>  
        </field>  
    </validators>  

    4、jsp页面

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
     <%@ taglib prefix="s" uri="/struts-tags" %>   <!--引入Struts标签  --> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
     <s:form action="LoginAction" method="post">  
         <s:textfield name="user.username" label="用户名" />
         <s:textfield name="user.password" label="密码" />
         <s:submit value="提交"/>  
       </s:form>  
    </body>
    </html>

     运行结果

  • 相关阅读:
    centos 7下安装mysql 5.7.21
    以多主模式优雅进行MGR复制搭建
    JMeter测试工具
    keepalived故障切换邮件通知
    vim常用快捷键
    mysql高可用之MHA--邮件报警
    Shell脚本实现批量下载资源并保留原始路径
    面试常考题 max pool实现
    Cpp 书籍推荐
    面试常考题 浅谈 赛马问题
  • 原文地址:https://www.cnblogs.com/heyesp/p/4428260.html
Copyright © 2011-2022 走看看