1. validate 输入校验方式
在Web系统项目中有大量的视图页面需要用户自行输入很多数据。这些数据的类型有很多种。为了防止某些客户的恶意输入以及对Web项目的恶意破坏。必须引入输入校验。
1.1 复习validate方法进行输入校验
这种的最基本方法就是在每个Action中继承ActionSupport类,并且重写它的输入校验方法validate()。
1.2 validateXXX 方法进行输入校验
这种方法可以说是上面一种的升级版,我们可以在Action类中将execute方法改变成XXX方法。
然后再写validateXXX方法来代替validate ,当然,两者只要写一个就行了。
例如:如果是一个注册的页面的话。
那么在JSP页面中使用
<s:form action="Register!Register.action">
这里可以看到有两个Register,那么这两个分别表示什么意思呢?
第二个是Action类里面的XXX方法名,而感叹号之前呢就是在struts.xml配置文件中定义RegisterAction的映射中的“name”内容。如果只写感叹号后面的内容,那么就会只显示执行execute方法。
2. 利用配置文件进行输入校验方法说明
如果是根据上面的哪一种方法会显得比较繁琐,而且如果是一个比较小的项目的话,会耗费极大的时间和成本,所以呢,就引入了配置文件进行输入校验。
2.1 Struts2 字段校验的配置文件形式
在XML文件中校验的话,其实也没什么特别的。这里给几个例子:
<field name="username">
<field-validator type="stringlength">
<param name="minLength">6</param>
<param name="maxLength">8</param>
<message>用户名长度必须在${minLength}-${maxLength}位之间</message>
</field-validator>
<field-validator type="requiredstring">
<message>请输入用户名</message>
</field-validator>
</field>
这里就是配置文件中的一些配置方法,但是要注意的是minLength和maxLength必须要这样写。不然struts2 是不会有所提示的。
2.2 Struts2非字段校验的配置文件形式
这种的校验方式呢,和字段校验相比,只是输入校验配置文件的内容有所不同。
不需要field这个标签,而是使用<validators><validator></validator></validators>
即可,然后在里面再加上一个属性叫做username即可。
Struts2输入校验出错信息的国际化篇配置形式
这一点呢?主要就是在属性文件中加上了一些值,其实就是相当于变量一样在代码中进行使用。在message中再加上一个属性 key,而key 的值就是我们刚刚在属性文件中所定义的变量的值。
2.3 集合类型输入校验介绍
。。。待续