标签:
struts2输入校验分为对action中的所有方法进行校验和对action中的指定方法进行校验。
校验方式有两种:手工校验和xml文件校验。
首先是手工校验:
<%@ page language="java" pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>输入校验</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> <s:fielderror/> ----显示错误信息 <form action="${pageContext.request.contextPath}/person/manage_update.action" method="post"> 用户名:<input type="text" name="username"/>不能为空<br/> 手机号:<input type="text" name="mobile"/>不能为空,并且要符合手机号的格式1,3/5/8,后面是9个数字<br/> <input type="submit" value="提 交"/></form> </body> </html>
package cn.itcast.action; import java.util.regex.Pattern; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; public class PersonAction extends ActionSupport{ private String username; private String mobile; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getMobile() { return mobile; } public void setMobile(String mobile) { this.mobile = mobile; } public String update(){ ActionContext.getContext().put("message", "更新成功"); return "message"; } public String save(){ ActionContext.getContext().put("message", "保存成功"); return "message"; } @Override public void validate() {//会对action中的所有方法校验 if(this.username==null || "".equals(this.username.trim())){ this.addFieldError("username", "用户名不能为空"); } if(this.mobile==null || "".equals(this.mobile.trim())){ this.addFieldError("mobile", "手机号不能为空"); }else{ if(!Pattern.compile("^1[358]\\d{9}$").matcher(this.mobile).matches()){ this.addFieldError("mobile", "手机号格式不正确"); } } }
public void validateUpdate() {//会对update()方法校验
if(this.username==null || "".equals(this.username.trim())){
this.addFieldError("username", "用户名不能为空");
}
if(this.mobile==null || "".equals(this.mobile.trim())){
this.addFieldError("mobile", "手机号不能为空");
}else{
if(!Pattern.compile("^1[358]\\d{9}$").matcher(this.mobile).matches()){
this.addFieldError("mobile", "手机号格式不正确");
}
}
} }
标签:
原文地址:http://www.cnblogs.com/kailing-con/p/4196963.html