20171011_chr_InnerValidator 校验框架输入校验(内建校验器)

来源:互联网 发布:mac系统怎么装win10 编辑:程序博客网 时间:2024/06/03 17:43

校验框架输入校验

  • /20171011_chr_InnerValidator/src/nuc/sw/action/registAction.java
package nuc.sw.action;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.ModelDriven;import nuc.sw.vo.User;public class registAction extends ActionSupport implements ModelDriven<User> {    private User u=new User();    @Override    public User getModel() {        // TODO Auto-generated method stub        return u;    }    //注册逻辑    public String registMethod() {        ActionContext.getContext().getSession().put("user", u);        return "registOK";    }}
  • /20171011_chr_InnerValidator/src/nuc/sw/action/registAction-validation.xml
<?xml version="1.0" encoding="UTF-8"?>  <!DOCTYPE validators PUBLIC        "-//Apache Struts//XWork Validator 1.0.3//EN"        "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">  <validators>   <field name="username">    <field-validator type="requiredstring">     <message>用户名必须输入!</message>    </field-validator>    <field-validator type="stringlength">         <param name="minLength">6</param>         <param name="maxLength">15</param>         <message>用户名长度应在6到15个字符间</message>        </field-validator>       </field>   <field name="password">    <field-validator type="requiredstring">     <message>密码必须输入!</message>    </field-validator>    <field-validator type="stringlength">         <param name="minLength">6</param>         <param name="maxLength">15</param>         <message>密码长度应在6到15个字符间</message>        </field-validator>     </field>   <field name="repassword">    <field-validator type="requiredstring">     <message>确认密码必须输入!</message>    </field-validator>    <field-validator type="fieldexpression">       <param name="expression"><![CDATA[password==repassword]]></param>          <message>两次密码必须相同!</message>        </field-validator>     </field>     <field name="birth">    <field-validator type="date">       <param name="min">1980-01-01</param>     <param name="max">2017-10-11</param>            <message>生日必须在${min}和${max}之间!</message>        </field-validator>     </field>   <field name="tel">    <field-validator type="requiredstring">     <message>电话必须输入!</message>    </field-validator>    <field-validator type="regex">       <param name="regexExpression">^13[0-9]{9}</param>           <message>电话必须以13开头并为11位!</message>        </field-validator>     </field>   <field name="eamil">    <field-validator type="regex">       <param name="regexExpression">^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$</param>           <message>邮箱格式不正确!</message>        </field-validator>     </field>     </validators>
  • /20171011_chr_InnerValidator/src/nuc/sw/vo/User.java
package nuc.sw.vo;import java.util.Date;public class User {    private String username;    private String password;    private String repassword;    private Date birth;    private String tel;    private String email;    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    public String getRepassword() {        return repassword;    }    public void setRepassword(String repassword) {        this.repassword = repassword;    }    public Date getBirth() {        return birth;    }    public void setBirth(Date birth) {        this.birth = birth;    }    public String getTel() {        return tel;    }    public void setTel(String tel) {        this.tel = tel;    }    public String getEmail() {        return email;    }    public void setEmail(String email) {        this.email = email;    }}
  • /20171011_chr_InnerValidator/src/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>    <!-- Add packages here -->    <package name="regist" namespace="/" extends="struts-default">      <action name="registAction" class="nuc.sw.action.registAction" method="registMethod">       <result name="registOK">        /success.jsp       </result>       <result name="input">        /register.jsp       </result>      </action>     </package></struts>
  • /20171011_chr_InnerValidator/WebContent/register.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ taglib prefix="s" uri="/struts-tags" %><%@ taglib prefix="sx" uri="/struts-dojo-tags" %>   <!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>注册页</title><sx:head/></head><body>  <s:form action="registAction" method="post">     <s:textfield label="用户名" name="username" ></s:textfield>    <s:password label="密码" name="password" ></s:password>    <s:password label="确认密码" name="repassword" ></s:password>    <sx:datetimepicker label="生日" name="birth" displayFormat="yyyy-MM-dd"></sx:datetimepicker>    <s:textfield label="电话" name="tel" ></s:textfield>    <s:textfield label="邮箱" name="email" ></s:textfield>    <s:submit value="注册" ></s:submit>  </s:form></body></html>
  • /20171011_chr_InnerValidator/WebContent/success.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!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>欢迎页</title></head><body>  用户${sessionScope.user.username}已注册成功!用户信息如下:<br>  生日:${sessionScope.user.birth}<br>  电话:${sessionScope.user.tel}<br>  邮箱:${sessionScope.user.email}<br></body></html>
阅读全文
0 0
原创粉丝点击