【Struts2学习笔记】第三讲:Struts2的输入校验

Ø  输入校验是建立在类型转换基础之上的:先进行类型转换再进行输入校验。

Ø  在类型转换的时候,如果出现异常,struts2会自动将异常信息保存到FieldError中。

Ø  类型转换与输入校验的流程

1.       struts2对客户端传来的数据进行类型转换

2.       类型转换完毕后进行输入校验

3.       如果类型转换和输入校验都没有出现错误,那么进入Action执行execute方法(执行业务逻辑)

注:如果类型转换不成功,也同样要进行输入校验

Ø  在类型转换出现异常的时候,struts2会自动添加错误提示信息到FieldError中,这些提示信息是default的,同时我们还可以借助资源文件来修改这些提示信息,以达到更加友好的提示效果:

1.       使用全局资源文件:

struts.xml中添加如下标签来注册全局资源文件:

<Constant  name=”struts.custom.i18n.resources” value=”resources_name”></Constant
 

然后在src根目录下添加名称为resources_name.propertise的资源文件,在里边加添声明:

xwork.default.invalid.fieldvalue={0}自己的提示信息
 

2.       也可以使用局部的资源文件:

action文件夹里,简历ActionName.properties文件,在里边添加声明:

invalid.fieldvalue.变量名=提示信息
 

Ø  Struts2有两个级别的错误:FieldErrorActionError,区别是:

FieldErrorMap类型的  存在一个键值对

ActionErrorCollection型的  具体是用ArrayList实现的。

Ø  有这样一种情况:一个Action里边可以执行多个不同业务逻辑方法,即:多个动作对应一个Action,一个动作对应一个Action里的一个方法,在struts.xml里配置Action时,为其加上method属性即可。同时又出现一个问题:多个方法有各自的验证业务,我们可以这样解决,为每个方法写一个验证方法,Public void validateMethod() {}即可。当Action中同时存在validate方法和validateMethod方法时,struts2将先执行validateMethod方法再执行validate方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值