JavaWeb -- Struts2 验证框架
1. 验证框架 示例
表单提交Jsp, reg.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"%>
<%@taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>reg.jsp</title>
</head>
<body>
<s:actionerror/>
<!-- validate="true" 能够在客户端生成脚本校验 -->
<s:form namespace="/validate" action="ValidateAction_reg" method="post" theme="xhtml" validate="true">
<s:textfield name="name" label="UserName" />
<s:textfield name="age" label="UserAge" />
<s:textfield name="password" label="password" />
<s:textfield name="confirmPassword" label="confirmPassword" />
<s:submit />
</s:form>
</body>
</html>
处理action
public class ValidateAction extends ActionSupport {
private static final long serialVersionUID = -6933309304624396640L; private String name;
private Integer age;
private String password ;
private String confirmPassword ; public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public String getConfirmPassword() {
return confirmPassword;
} public void setConfirmPassword(String confirmPassword) {
this.confirmPassword = confirmPassword;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public Integer getAge() {
return age;
} public void setAge(Integer age) {
this.age = age;
} public String reg() {
return "success";
} @SkipValidation
public String toRegView() {
System.out.println("toRegView");
return "regView";
}
}
struts2配置文件 validate.xml, 校验表单需要加 input result,有错误回跳
<?xml version="1.0"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<package name="ValidatePkg" namespace="/validate" extends="struts-default">
<action name="ValidateAction_*" class="cn.itcast.struts2.validate.ValidateAction" method="{1}">
<result name="success">/validate/reg.jsp</result>
<result name="regView">/validate/reg.jsp</result>
<result name="input">/validate/reg.jsp</result>
</action>
</package>
</struts>
ValidateAction-validation.xml 校验选项配置
<?xml version="1.0"?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="name">
<field-validator type="requiredstring">
<message>name is required</message>
</field-validator>
<field-validator type="stringlength">
<param name="minLength">5</param>
<param name="maxLength">10</param>
<message key="error.name.length" />
</field-validator>
<field-validator type="email">
<message>name is invalid email address!</message>
</field-validator>
</field>
<field name="age">
<field-validator type="required">
<message>age is required</message>
</field-validator>
<field-validator type="int">
<param name="min">20</param>
<param name="max">100</param>
<message>age rang is wrong!</message>
</field-validator>
</field>
<validator type="expression">
<param name="expresssion">password == confirmPassword</param>
<message>password input isn't the same!</message>
</validator>
</validators>
message 国际化 文件 ValidateAction.properties
label.name=userName
error.name.length=${name} is goog name,but length must be between ${minLength} and ${maxLength}.
字段校验type list
JavaWeb -- Struts2 验证框架的更多相关文章
- 关于struts2 验证框架在联网的时候可以用,不联网不起作用的问题
这是一个让我很头痛的问题,我是在一个其他的项目框架的基础上来开发新的项目. 当使用struts验证框架时,突然发现这个验证不起作用了,我就纳闷了之前用这个开发的项目好好的怎么到我这就不能用了呢? xm ...
- Struts2验证框架_xml验证失败
测试Struts2验证框架-->XML验证 启动tomcat后网页登录失败 Employee-validation.xml文件头如下: <!DOCTYPE validators PUB ...
- (七)Struts2 验证框架
所有的学习我们必须先搭建好Struts2的环境(1.导入对应的jar包,2.web.xml,3.struts.xml) 第一节:Struts2 验证简介 Struts2 基于Struts2 拦截器,为 ...
- Struts2验证框架实例
今天写了个Struts验证框架的实例,总算把验证框架弄清楚了. 上一篇Struts实例的action没有继承ActionSupport类,虽然也可以实现action的功能,但是却不能应用Struts提 ...
- struts2学习(11)struts2验证框架1.验证简介、内置验证
一.Struts2验证简介: 二.struts2内置验证: 下面例子,需求是:为用户注册进行验证: com.cy.model.User.java: package com.cy.model; publ ...
- Struts2 验证框架 validation.xml 常用的验证规则
validation.xml 的命名规则和放置路径: 文件名:<ActionClassName>-validation.xml <ActionClassName>就是要验证的A ...
- struts2验证框架
如何做一个工号 用户 密码 验证登录页面? 答:1,先画一个login.jsp ,如何画呢?先引入Struts2标签库,利用Struts2标签库画登录页面:如下: 2,先进入useractiion,在 ...
- struts2验证框架1
<!--该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts 2处理.如果用户需要指定多个请求后缀,则多个后缀之间以英文逗 ...
- struts2学习(12)struts2验证框架2.自定义验证
一.例子需求: 对敏感词进行验证: 将struts包中的validators.xml文件拷贝一份到src目录下,在最后面添加自己的验证器: com.cy.validators.SensitiveWor ...
随机推荐
- 170209、mysql索引的建立
用到索引最普通的情况,是为出现在where子句的字段建一个索引.为方便讲述,我们先建立一个如下的表. Code代码如下: CREATE TABLE mytable ( id serial primar ...
- Python全栈day24(面向对象编程作业作业_定义学校老师课程班级学生类)
面向对象作业 作业_定义学校老师课程班级学生类.py #面向对象编程作业,定义学校老师课程班级学生类 #定义几个类,尽可能定义多的数据属性及函数属性 class School: def __init_ ...
- delphi -----获取计算IP
function GetHostName:String; var ComputerName: ..MAX_COMPUTERNAME_LENGTH+] of char; Size: Cardinal; ...
- Tornado源码浅析
初识tornado 经典的hello world 案例: import tornado.ioloop import tornado.web class MainHandler(tornado.web. ...
- poj 1182 食物链 (带关系的并查集)
食物链 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 44835 Accepted: 13069 Description 动 ...
- JS当页换图片(分析href所给的信息)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DT ...
- [luogu4556]雨天的尾巴
[luogu4556]雨天的尾巴 luogu 发现是一顿子修改然后再询问,那么把修改树上差分一下再线段树合并 但是... 如果你只有35分... https://www.luogu.org/discu ...
- Kotlin 初级读本
第一部分——快速上手第一章·启程 第二章·基本语法第三章·Kotlin 与 Java 混编 第二部分——开始学习 Kotlin第四章·Kotlin 的类特性(上)第四章·Kotlin 的类特性(下)第 ...
- 用仿ActionScript的语法来编写html5——第四篇,继承与简单的rpg
第四篇,继承与简单的rpg 这次用继承自LSprite的类来实现简单的rpg的demo先看一下最后的代码与as的相似度 var backLayer; //地图 var mapimg; //人物 var ...
- Ubuntu 16.04 安装 JDK 及 Eclipse 详细步骤(转发:https://blog.csdn.net/bluish_white/article/details/56509446)
2017.3.1更新 修正了一些命令,现在按照文章步骤配置不会出现问题了. JDK 安装及配置 参考来源:http://www.linuxidc.com/Linux/2017-02/140908.ht ...