五数据核验
action继承Actionsupport
public void validate()
{
if (getUsername() == null || getUsername().trim().equals(""))
{
addFieldError("username", getText("user.required"));//国际化
}
if (getPassword() == null || getPassword().trim().equals(""))
{
addFieldError("password", getText("pass.required"));
}
}
messageResource_zh_CN.properties
添加
user.required=用户名必须输入!(自动转成ASCII)
如果校验失败,系统能将视图转入input处
要做input的配置
<result name="input">/login.jsp</result>
显示
<s:form action="Login">
<s:textfield name="username" key="user"/>
<s:textfield name="password" key="pass"/>
<s:submit key="login"/>
</s:form>
<s:form 标签已经具备了输出校验错误的能力
第二种方法
使用校验框架
LoginAction-validation.xml
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="username">
<field-validator type="requiredstring">
<message key="user.required"/>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<message key="pass.required"/>
</field-validator>
</field>
</validators>
命名规则 ActionName-validation.xml
必须放在ActionName同一个路径下。
同样配置messageResource和struts.xml的input跳转。
本文详细介绍了Struts2框架中的验证机制,包括如何通过Action类实现数据验证、使用国际化资源文件显示错误信息以及利用验证配置文件进行字段级别的校验。
477

被折叠的 条评论
为什么被折叠?



