struts中简单的校验
Struts中简单的校验
“计应134(实验班) 凌豪”
Struts2校验简要说明:struts2中通常情况下,类型转换要在数据校验之前进行。类型转换其实也是基本的服务器端校验,合法数据必然可以通过类
型转换,但是通过类型转换的不一定是符合项目的合法数据,还必须进行数据校验,所以类型转换是进行数据校验的前提。
比如:struts2可以将String类型的转为int类型,要求用户输入年龄(小于10岁),如果用户输入的不是一个整型而是一个字符
串,或者用户输入的年龄不符合要求,所以在转换之后必须执行校验操作。在Struts2中提供了3种输入校验方式,第一种是重写Action中的validate()方法,
此方法对当前Action中的所有方法都是有效的。第二种是重写Action中的validateXXX()方法,其中XXX是对应的方法名,采用这种方法可以为每个业务逻辑编写
一个校验代码。第三种方法是利用Struts2的校验框架,这种方法是将所有的校验规则都写在相应的XML文件中,其中下面的例子则是用了第三种方法。
- 注意:校验文件的命名规则为Action类名-validation.xml,例如在下面的例子中RegisAction类对应的校验文件名为
RegistAction-validation.xml且校验文件必须与要检验的Action类放在同一个包中。
Register例子
1.创建一个新的Web项目register(File->new->Web Project)
2.添加struts2框架(右击项目register->add struts cabapbilities)
选择struts 2.1点击Finish
3.配置web.xml(web.xml是Web应用项目的核心配置文件,用来对整个项目进行部署配置。
对于struts2而言,如果要加载控制器FilterDispatcher,只需要在web.xml文件中配置FilterDispatcher即可)
4.在src下建一个com包,在包中新建名为RegisAction的class(即业务逻辑层action)RegisAction需继承ActionSupport
5.配置校验文件RegistAction-validation.xml(校验文件的命名规则是Action类名-validation.xml
如上面的RegisAction类对应的校验文件名为RegistAction-validation.xml且校验文件必须与要检验的Action类放在同一个包中)
6.配置struts.xml
7.新建regist.jsp
8.在浏览器中输入http://localhost:8080/register/(有的端口号为8085根据自身情况进行更改)
struts中简单的校验的更多相关文章
- struts中的数据校验
1.struts中如何进行数据校验 在每一个Action类中,数据校验一般都写在业务方法中,比如login().register()等.struts提供了数据校验功能.每个继承自ActionSuppo ...
- struts中的常量,action配置中的默认值
1.struts中Action的开发方式 继承ActionSupport类,这种方法实现的Action可以进行数据校验: 实现Action接口: 不继承任何类,不实现任何接口: 是否继承类或实现接口, ...
- Struts 2的数据校验
既然说到了Struts 2的数据校验,我们该怎么去实现呢?又是通过什么来实现呢? 就让我带着大家一起来走进Struts 2的数据校验吧. 首先我们会想到在Stuts 2的登录案例中我们定义了一个Act ...
- Struts中的 saveToken的方法
Struts中的 saveToken的方法 saveToken防止2次提交的问题 struts有自带的Token(令牌)的机制来解决重复提交(包括后退,刷新等).举例: 假设:假设有一个新增用 ...
- Struts2中validate数据校验的两种常用方法
本文主要介绍Struts2中validate数据校验的两种方法及Struts2常用校验器. 1.Action中的validate()方法 Struts2提供了一个Validateable接口,这个接 ...
- 在Apache Struts中利用OGNL注入
前言 本文简要介绍了Apache Struts的OGNL注入缺陷,文章中介绍使用简单的应用程序复现OGNL注入.深入研究针对公共漏洞,并理解这类漏洞. 内容 安装Apache Tomcat服务器(入门 ...
- 转载-struts中logic标签使用
Struts中Logic逻辑标签的作用及用法 Struts中Logic逻辑标签的作用及用法 2006年10月18日 星期三 21:34 Terry原创,转载请说明作者及出处 Logic标签大部分的功能 ...
- 【SpringMVC学习06】SpringMVC中的数据校验
这一篇博文主要总结一下springmvc中对数据的校验.在实际中,通常使用较多是前端的校验,比如页面中js校验,对于安全要求较高的建议在服务端也要进行校验.服务端校验可以是在控制层conroller, ...
- Struts 2简单实例
Struts 2简单实例 参考: [java开发系列]—— struts2简单入门示例 - xingoo - 博客园https://www.cnblogs.com/xing901022/p/39616 ...
随机推荐
- 为什么Underscore
Underscore是什么? Underscore一个JavaScript实用库,提供了一整套函数式编程的实用功能,但是没有扩展任何JavaScript内置对象.它是这个问题的答案:“如果我在一个空白 ...
- HasMap
您还未登录 ! 登录 注册 论坛首页 → Java企业应用论坛 → 深入理解HashMap 全部 Hibernate Spring Struts iBATIS 企业应用 Lucene SOA Java ...
- Redis系列整理
0.Redis系列-安装部署维护篇 1.Redis系列-远程连接redis并给redis加锁 2.Redis系列-存储篇string主要操作函数小结 3.Redis系列-存储篇list主要操作函数小结 ...
- python基础之python中if __name__ == '__main__': 的解析
当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__.一个 ...
- [MFC]解决回车键 ESC 默认关闭窗口的一般方法
在一般情况下编写的对话框程序,用户在运行的时候,如果不注意按下了ENTER或者ESC键,程序就会立刻退出,之所以会这样,是因为按下Enter键时,Windows就会自动去找输入焦点落在了哪一个按钮上, ...
- oracle distinct 去除重复,同时按某字段排序
SELECT distinct supplier_id, min(evidence_date) as evidence_date FROM TD_SUPPLIER_EVIDENCE_INFO wher ...
- VIM设置-发现VIM的美
今天在Linux上调代码,突然发现连高亮都没有.到网上找了找,发现一个大神的微博里有. 在此记录:http://www.cnblogs.com/ma6174/archive/2011/12/10/22 ...
- 在win8.1下安装laravel5.1时碰到的坑不少,但总算搞掂,真有点不容易。
安装好php后,安装laravel的方法有如下几种. 1.先安装好composer, 再用composer下载资源并安装,命令如下: composer create-project laravel/l ...
- MediaPlayer类——播放视频和音乐
1)如何获得MediaPlayer实例: 可以使用直接new的方式: MediaPlayer mp = new MediaPlayer(); 也可以使用create的方式,如: MediaPlayer ...
- openStack CI(Continuous interaction)/CD(Continuous delivery) Gerrit/Jenkins安装及集成,插件配置
preFace: CI/CD practice part contains the following action items and fields of expertise: Gerrit ins ...