写点什么

Struts 校验器(Validate)

作者:
  • 2022 年 9 月 28 日
    河南
  • 本文字数:1122 字

    阅读完需:约 4 分钟

Struts 校验器(Validate)

方式一

通过 validate 方法来实现


1、实现思路

  • 1.首先创建一个项目,名为 StrutsTest

  • 2.创建一个包存放 Struts,创建类,命名为 LoginAction.java

  • 3.在该包下,创建一个 xml 文件,名为 struts.xml

  • 4.把 jar 包导入 lib 目录下

  • 5.在 web.xml 中配置过滤器

  • 6.创建一个实体类 User,其中的属性值与 form 表单提交的数据保持一致

  • 7.编写 validate 方法

  • 8.关键代码如下:

2、具体实现

在 LoginAction,编写一个方法,判断是否用户名为空,并 addFieldError,提示信息。

3、LoginAction

public void validate(){    	if(user.getUserName()==null||user.getUserName().trim().equals(" ")){    		addFieldError(user.getUserName(), "用户名不能为空");}
复制代码

方式二(推荐)

通过 Action+validation.xml 配置来实现

1、实现思路

  • 1.首先创建一个项目,名为 StrutsTest

  • 2.创建一个包存放 Struts,创建类,命名为 LoginAction.java

  • 3.在该包下,创建一个 xml 文件,名为 struts.xml

  • 4.把 jar 包导入 lib 目录下

  • 5.在 web.xml 中配置过滤器

  • 6.创建一个实体类 User,其中的属性值与 form 表单提交的数据保持一致

  • 7.在 LoginAction 包下创建 LooginAction-validation.xml 编写校验规则

  • 8.关键代码如下:

2、具体实现

在 LoginAction 同级包下创建 LooginAction-validation.xml 编写校验规则,如 requiredstring 校验器等。

3、LoginAction-validation

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE validators PUBLIC    "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"><validators>
<!-- 校验方式二 Action命名+validation.xml -->
<!-- 需要校验的字段的字段名 --> <field name="user.userName"> <!--验证字符串不能为空,即必填--> <field-validator type="requiredstring"> <!--去空格--> <param name="trim">true</param> <!--错误提示信息--> <message>用户名必须填!</message> </field-validator> </field> <!-- 邮箱校验 --> <field name="user.email"> <field-validator type="email"> <message>请输入有效邮箱地址</message> </field-validator> </field> <!-- 年龄校验等等 --> <!-- <field name="user.age"> <field-validator type="int"> <param name="min">0</param> <param name="max">100</param> <message>请输入有效年龄</message> </field-validator> </field> --> </validators>
复制代码


实现效果

主页面:

当校验失败时:


校验成功之后:

总结

以上就是 Struts2 框架为我们提供的校验的,只需增加校验配置文件,就可以完成对数据的校验,方便了我们的开发,除此之外,Struts2 还为我们提供了大量的其他表单校验和非表单校验。

发布于: 刚刚阅读数: 4
用户头像

关注

在校大三学生一枚 2022.08.02 加入

喜欢学习编程,擅长技术栈JAVA

评论

发布
暂无评论
Struts 校验器(Validate)_表单校验_斯_InfoQ写作社区