简单OA项目笔记(3):Struts校验框架
来源:互联网 发布:优品会展软件 编辑:程序博客网 时间:2024/04/28 13:57
第一次接触struts2的校验框架,不算难。
今天看到两种用法:一是把校验文件放在action的相同目录下;二是action所在目录下放一个,和bean所在的目录下各放一个。
第二种等于能自己给校验的方法起名字,其实效果类似。
一:单个validation.xml的校验
在action的所在的包下,建一个:“action名称-方法名-validation.xml”
requiredstring是校验方法,是必须的
message提示信息
<validators><field name="user.firstname"><field-validator type="requiredstring"><message>错误提示信息:required first name</message></field-validator></field></validators>
因为action里聚合了private User user;
所以<field name 都是以“user.”开头的。
type="int"是校验的类型,这里是在一个数值区间之中
<field name="user.age"><field-validator type="required"><message>required age</message></field-validator><field-validator type="int"><param name="min">1</param><param name="max">130</param><message>age should be between ${min} and ${max}</message></field-validator></field>
二:action所在目录下和bean所在的目录下各放一个validation.xml
action包下的校验文件:
type="visitor"表名用visitor的校验方法
"context"是校验名称,这部分出现在第二个xml的文件名里
"appendPrefix">true<> 开启提示信息的开头部分
<validators><field name="user"><field-validator type="visitor"><param name="context">user</param><param name="appendPrefix">true</param><message>user's </message></field-validator></field></validators>
bean所在目录下的校验文件:
在bean里新建第二个校验xml
“bean名称-第一个校验xml中的校验名称-validation.xml”
<field name="firstname" 不再是user.,剩下都一样
<validators><field name="firstname"><field-validator type="requiredstring"><message>required first name</message></field-validator></field><field name="age"><field-validator type="required"><message>required age</message></field-validator><field-validator type="int"><param name="min">1</param><param name="max">150</param><message>age should be between ${min} and ${max}</message></field-validator></field></validators>
三:输入改正的信息之后,表单不能提交
光这样用验证框架后,检查到输入错误后有个bug:就是输入改正之后再提交,错误信息一直重复出现,而且表单不能提交到action
原因上一篇文章分析过了,
是现在action现在由spring生成(而不是struts),
spring配置文件中action的bean不配置scope的时候,默认是单例,也就是说所有请求都是一个action处理,才会出问题
所以要配<bean id="saveUserAction" class="com.xxx.action.xxxAction" scope="prototype">
这样验证之后才能正确显示,修改之后才能马上正确提交
- 简单OA项目笔记(3):Struts校验框架
- struts+spring+hibernate基本项目框架的搭建(3)--Struts校验框架的使用
- 简单OA项目笔记(6):Ant+XDoclet
- struts校验框架
- struts validate校验框架
- Struts中的校验框架
- struts中的校验框架
- 【Struts】--Struts2校验框架
- struts校验框架
- 【Struts框架】第一节Action-简单的数据校验
- OA项目笔记
- 简单OA项目笔记(1):MyEclipse添加SSH支持
- 简单OA项目笔记(4):更新操作 (P-Action)
- struts Validator框架校验说明
- Struts 2的校验框架
- struts校验框架(一)
- Java 简单校验框架
- Validator校验框架笔记
- 谷歌重视速度:Chrome比去年快了26%
- PE感染
- js 点击input和textarea 文本框消失
- NTKO Office文档控件常用方法
- 高内聚、低耦合
- 简单OA项目笔记(3):Struts校验框架
- Eclipse集成Maven的几个问题
- 静态的变量的基本用法
- 个人查看
- 一步一步学习hadoop(七)
- poj 1850 Code
- android项目 R丢失问题 解决
- linux操作系统下完全删除oracle数据库
- EL————基础