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

[size=medium]类型转换与输入校验的流程
1、首先Struts2对客户端传来的数据进行类型转换
当数据类型转换不成功时:struts2会自带一个提示错误的信息,并且将该错误信息放到addFieldError(此方法是action类继承ActionSupport类中的方法)里面显示出来....但是它自带的提示信息对客户来说不友好....通常是程序员自己定义提示信息,定义的方式是:使用国际化提示文件(全局国际化文件或局部国际化文件):
一、全局国际化提示错误的文件(放在src目录下):文件名的格式为:message.properties

此文件里写:xwork.default.invalid.fieldvalue={0}error

注意:{0}中是动态的,是一个属性名,哪个属性出错了就显示哪个,显示的属性名填充{0}。
注意:使用全局国际化提示错误的文件时需要配置struts.xml。配置方法:在<struts></struts>标签中写<constantname="struts.custom.i18n.resources"value="message"></constant>注意:value的名字是生成全局国际化提示文件的文件名字。
二、局部国际化提示文件(针对指定的一个属性,放在action类的同包下面)文件名字为:action类.properties

此文件里写:invalid.fieldvalue.指定的属性名字=提示的信息(此处可以用汉字但必须在dos下用native2ascii命令转化)
一般情况下都使用局部提示文件。


2、类型转换完毕后再进入输入校验
action类中继承ActionSupport类可以使用ActionSupport中的方法validate()进行校验、此方法的作用是:验证是否为空、长度等!还有起提示作用的方法addFieldError("","")方法中两个参数一个是确定提示信息出现的位置,第二个是提示信息的内容。当验证不成功时就跳到一个原来的登陆页面、在struts.xml中定义的result的名字固定为input。但是一般的返回与struts.xml相连接的东西还是要出现在execute()方法中。。。
3、如果类型转换和输入校验都没有错误发生,那么进入execute方法
注意:如果类型转换不成功也要进行输入校验


[color=red][类型转换与输入校验的关系:先有类型转换再有输入校验]

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

1、首先struts2对客户端传来的数据进行类型转换;

2、类型转换完成(包括成功与不成功都需要进入输入校验)后,再进行输入校验;

3、如果类型转换和输入校验都没错误发生,则进入execute()进行执行(调用业务逻辑);
[/color]

[/size]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值