首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

struts2的校验-宣言校验和编程校验

2012-10-26 
struts2的校验-声明校验和编程校验对于用户输入的信息,web应用程序通常会进行有效性和逻辑性等方面的校验,

struts2的校验-声明校验和编程校验

对于用户输入的信息,web应用程序通常会进行有效性和逻辑性等方面的校验,struts2对此提供了基于xwok的声明式校验和编程式校验。

一、声明式校验需要一个xml文件,这个文件提供哪些字段需要校验,应用什么规则。文件名格式:actionname-validation.xml,如果action有多个方法,要为每个方法定义规则,则需要添加方法名,如actionname-methodname-validation.xml。此例包括一个action,一个xml文件(与action在同一目录下),两个jsp文件,其他还有在struts.xml中的配置信息。

action代码如下:

?struts.xml文件添加如下action信息:

?validate.jsp文件:

?success.jsp文件:

package data.validator;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import com.opensymphony.xwork2.ActionSupport;public class ValidateableAction extends ActionSupport {private String userName;private String password;private static List dbusers = new ArrayList();static{dbusers = Arrays.asList(new String[]{"xiaowang","xiaoliu"});}public String testValidate()throws Exception {return ActionSupport.SUCCESS;}public void validate(){if(dbusers.contains(userName)){addFieldError("userName","userName have been used.");}}public String getUserName() {return userName;}public String getPassword() {return password;}public void setUserName(String userName) {this.userName = userName;}public void setPassword(String password) {this.password = password;}}

?这样,使用编程式校验就可以实现逻辑性和业务相关性较强的校验规则了。

热点排行