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中简单的校验的更多相关文章

  1. struts中的数据校验

    1.struts中如何进行数据校验 在每一个Action类中,数据校验一般都写在业务方法中,比如login().register()等.struts提供了数据校验功能.每个继承自ActionSuppo ...

  2. struts中的常量,action配置中的默认值

    1.struts中Action的开发方式 继承ActionSupport类,这种方法实现的Action可以进行数据校验: 实现Action接口: 不继承任何类,不实现任何接口: 是否继承类或实现接口, ...

  3. Struts 2的数据校验

    既然说到了Struts 2的数据校验,我们该怎么去实现呢?又是通过什么来实现呢? 就让我带着大家一起来走进Struts 2的数据校验吧. 首先我们会想到在Stuts 2的登录案例中我们定义了一个Act ...

  4. Struts中的 saveToken的方法

    Struts中的 saveToken的方法     saveToken防止2次提交的问题 struts有自带的Token(令牌)的机制来解决重复提交(包括后退,刷新等).举例: 假设:假设有一个新增用 ...

  5. Struts2中validate数据校验的两种常用方法

    本文主要介绍Struts2中validate数据校验的两种方法及Struts2常用校验器.  1.Action中的validate()方法 Struts2提供了一个Validateable接口,这个接 ...

  6. 在Apache Struts中利用OGNL注入

    前言 本文简要介绍了Apache Struts的OGNL注入缺陷,文章中介绍使用简单的应用程序复现OGNL注入.深入研究针对公共漏洞,并理解这类漏洞. 内容 安装Apache Tomcat服务器(入门 ...

  7. 转载-struts中logic标签使用

    Struts中Logic逻辑标签的作用及用法 Struts中Logic逻辑标签的作用及用法 2006年10月18日 星期三 21:34 Terry原创,转载请说明作者及出处 Logic标签大部分的功能 ...

  8. 【SpringMVC学习06】SpringMVC中的数据校验

    这一篇博文主要总结一下springmvc中对数据的校验.在实际中,通常使用较多是前端的校验,比如页面中js校验,对于安全要求较高的建议在服务端也要进行校验.服务端校验可以是在控制层conroller, ...

  9. Struts 2简单实例

    Struts 2简单实例 参考: [java开发系列]—— struts2简单入门示例 - xingoo - 博客园https://www.cnblogs.com/xing901022/p/39616 ...

随机推荐

  1. 浏览器操作html页面的width和height

    原文:http://www.cnblogs.com/dengshunping/archive/2009/06/15/1503803.html IE中: document.body.clientWidt ...

  2. SET STATISTICS IO和SET STATISTICS TIME 在SQL Server查询性能优化中的作用

    近段时间以来,一直在探究SQL Server查询性能的问题,当然也漫无目的的查找了很多资料,也从网上的大神们的文章中学到了很多,在这里,向各位大神致敬.正是受大神们无私奉献精神的影响,所以小弟也作为回 ...

  3. 用GoEasy推送实现Java实时推送

    前段时间客户有个需求他希望他在后台管理页面发布一个消息,所有用这个系统的用户无论在哪个页面都能及时收到他发布的信息,以前对于类似需求在少量 页面接收的前提下,我一般采用ajax定时去服务器pull信息 ...

  4. vim命令杂记

    vim 实用命令. . . 命令重复上一次修改动作 >G 增加当前行到文档末尾处的缩进 C 相当于c$,更改当前位置 至 行尾的单词 S 相当于^c , 更改一行 : 重复上次的f命令所查找的字 ...

  5. ListView多选操作模式——上下文操作模式

    1.什么叫上下文操作模式 2.如何进入上下文操作模式 1.ListView自身带了单选.多选模式,可通过listview.setChoiceMode来设置: listview.setChoiceMod ...

  6. #CI的MVC实现

    CI的MVC实现 CI被标榜为一款简单易用的框架,经过一段时间的了解后,它的小而精给让我印象深刻.麻雀虽小五脏俱全,一个框架产品包含太多的特性,这篇文章就说说CI中是如何实现MVC的? 执行流程 根据 ...

  7. PYthon成长之路第一篇(1)__字符串初识

    今天一起走进python的代码世界,一起领悟python的魅力 在很多学习python的书中都会以 print  “Hello,world!” 这样的而一个程序为开始,那么其中的 hello,worl ...

  8. SQL顺序列找出断号

    select id from info id-----------123567810111215 (11 行受影响) 方法一: select (select max(id)+1 from Info w ...

  9. Java调用.dll文件

    因为项目的需求,要在JAVA项目中调用Windows的Dll(动态链接库)文件,之前用Jni调用过C写的Dll文件,比较麻烦,这里不多说,网上也有很多这方面的文档.在网上找到一个开源的组件JNativ ...

  10. Mirantis Fuel fundations

    Mirantis Nailgun is the most important service a RESTful application written in Python that contains ...