Struts 2 的输入校验
来源:互联网 发布:手机可以做淘宝网店吗 编辑:程序博客网 时间:2024/04/30 19:31
输入校验:要求用户名必须是字母和数字的组合且长度在(4-15)范围内。密码必须是字母和数字的组合且长度在(6-15)范围内,两次输入密码要相同。年龄必须为整数且在(1-99)范围内。PS:输入校验也可以使用JavaScript,或者jQuery来做,貌似更简单一点。。。
开发环境:
IntelliJ IDEA 14.1.3
java version “1.7.0_65”
Apache Tomcat 7.0
Struts 2.3
Win7 64位
输入校验效果图如下:
表单未输入任何内容,点击提交:
第二次输入密码与上一次不同,点击提交:
输入正确:
代码组织结构:
源码如下:index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %><%@taglib prefix="s" uri="/struts-tags" %><html> <head> <title></title> </head> <body> <s:form action="validate1"> <s:textfield name="username" label="用户名" required = "true"/> <s:textfield name="pass1" label="输入密码" required = "true"/> <s:textfield name="pass2" label="重复密码" required = "true"/> <s:textfield name="age" label="年龄" required = "true"/> <s:submit value="提交"/> </s:form> </body></html>
welcome.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head> <title></title></head><body> 欢迎!!!</body></html>
Regist.java
package com.jl.action;import com.opensymphony.xwork2.ActionSupport;/** * Created by root on 2016/9/9. */public class Regist extends ActionSupport{ private String username;//创建用户名属性 private String pass1;//创建密码属性 private String pass2;//创建确认密码属性 private int age;//创建年龄属性 public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPass1() { return pass1; } public void setPass1(String pass1) { this.pass1 = pass1; } public String getPass2() { return pass2; } public void setPass2(String pass2) { this.pass2 = pass2; } public int getAge() { return age; } public void setAge(int age) { this.age = age; }}
校验规则文件Regist-validation.xml
<?xml version="1.0" encoding="GBK"?><!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="regex"> <param name="regex"> <![CDATA[(\w{4,15})]]> </param> <message>用户名必须是字母和数字的组合且长度在(4-15)范围内</message> </field-validator> </field> <!-- 密码校验区域 --> <field name="pass1"> <!-- 校验密码不能为空 --> <field-validator type="requiredstring"> <message>必须输入密码</message> </field-validator> <!-- 校验密码格式 --> <field-validator type="regex"> <param name="regex"> <![CDATA[(\w{6,15})]]> </param> <message>密码必须是字母和数字的组合且长度在(6-15)范围内</message> </field-validator> </field> <!-- 重复输入密码校验区域 --> <field name="pass2"> <!-- 重复输入密码不能为空 --> <field-validator type="requiredstring"> <message>必须重复输入密码</message> </field-validator> <!-- 校验重复输入密码格式 --> <field-validator type="regex"> <param name="regex"> <![CDATA[(\w{6,15})]]> </param> <message>密码必须是字母和数字的组合且长度在(6-15)范围内</message> </field-validator> <!-- 校验两次输入密码的一致性 --> <field-validator type="fieldexpression"> <param name="expression"> <![CDATA[(pass2.equals(pass1))]]> </param> <message>两次输入密码不符</message> </field-validator> </field> <!-- 年龄校验区域 --> <field name="age"> <!-- 校验年龄不能为空 --> <field-validator type="required"> <message>必须输入年龄</message> </field-validator> <!-- 校验年龄范围 --> <field-validator type="int"> <param name="min">1</param> <param name="max">99</param> <message>年龄必须为整数且在(1-99)范围内</message> </field-validator> </field></validators>
web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping></web-app>
0 0
- struts 2的输入校验
- Struts 2 的输入校验
- Struts 2 的输入校验(2)
- Struts 2框架的输入校验
- Struts 2读书笔记-----使用Struts 2的输入校验
- Struts 2读书笔记-----使用Struts 2的输入校验
- Struts输入校验(2)
- 分析struts的输入校验源代码
- struts 输入校验
- struts 输入校验
- Struts-输入校验
- Struts输入校验之后保留原先的输入值
- Struts 2的校验框架
- Struts的类型转换及输入校验(Struts2的输入校验)
- struts入门之输入校验
- Struts运行的基本流程及输入校验
- Struts 2输入校验/采用手工编写/基于XML配置
- Struts 2 类型转换器 输入校验 拦截器
- 求N个数的阶乘和
- LeetCodde[322] Coin Change
- PostgreSQL导入shp文件
- 软考网络规划设计师论文写作真题
- GreenDao框架使用
- Struts 2 的输入校验
- DBA_Oracle冷备份案例脚本本法(案例)
- Spring 的 AOP
- 使用Greendao进行批量添加数据(Android Studio读取assets下的数据库文件)
- Django数据表更改
- ASP.NET Web API(C#)实现简单增删改查
- 【WEB开发原理】servlet原理
- windows建立ftp站点-有重点
- 软考网络规划设计师考试要求