zoukankan      html  css  js  c++  java
  • Struts2 Validate

    1.自定义action继承ActionSupport

    2.复写validate方法,因为ActionSupport实现了Validate这个借口,而这个借口中定义了validate方法

    3.当请求时,先执行validate这个方法,然后再执行自己请求的方法

    添加:<%@ taglib uri="/struts-tags" prefix="s" %>     引入struts2标签库

    请求url

       		 <s:form action="validate/validateAction_testValidate.action" method="post">
       		 	<s:textfield name="username" label="用户名"></s:textfield>
       		 	<s:password name="password" label="密码"></s:password>
       		 	<s:submit></s:submit>
       		 </s:form>
    

    struts.xml中配置

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts PUBLIC
    	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    	"http://struts.apache.org/dtds/struts-2.3.dtd">
    <struts>  
    	<package name="validate" namespace="/validate" extends="struts-default">
    		<action name="validateAction_*" class="com.struts2.validate.ValidateAction" method="{1}">
    			<result>success.jsp</result>
    			<result name="input">login.jsp</result>
    		</action>
    	</package>  
    </struts>  
    

      

    Action中的配置

    package com.struts2.validate;
    
    import org.apache.struts2.ServletActionContext;
    
    import com.opensymphony.xwork2.ActionSupport;
    
    //印证
    public class ValidateAction extends ActionSupport {
    	public String testValidate(){
    		System.out.println("success");
    		return SUCCESS;
    	}
    	
    	//这个方法是执行印证的,如果验证有错误,则和配置文件result的name的值为input,这个是固定的
    	//addFiledError中的第一个参数与页面上的name的值保持一致
    	//struts2标签会把验证信息输出
    	public void validate(){
    		String username = ServletActionContext.getRequest().getParameter("username");
    		String password = ServletActionContext.getRequest().getParameter("password");
    		
    		System.out.println(username+"---"+password);
    		
    		if("".equals(username))
    			this.addFieldError("username", "用户名不能为空");//与输入的name值一样
    		if("".equals(password)){
    			this.addFieldError("password", "密码不能为空");//与输入的name值一样
    		}
    	}
    }
    

      

  • 相关阅读:
    Find cmd
    splitFile2SmallFile
    IPC-->PIPO
    Thread and shared lock
    Python Thread related
    linux 文件系统
    linux commands
    关于 gnome3 无法显示应用程序所有界面的反馈
    Windows 网络编程
    常见端口 HTTP代码
  • 原文地址:https://www.cnblogs.com/callyblog/p/7517582.html
Copyright © 2011-2022 走看看