Struts 2 自定义验证 - Workflow 拦截器17 Mar 2025 | 4 分钟阅读 我们可以通过在操作类中实现 Validateable 接口来在 struts 2 中定义我们自己的验证逻辑(自定义验证)。 工作流拦截器用于获取有关操作类中定义的错误消息的信息。 工作流拦截器工作流拦截器检查是否存在任何验证错误。它不执行任何验证。 当操作类实现 Validateable 接口时应用。input 是此拦截器的默认参数,用于确定要为操作或字段错误调用的结果。 它在 defaultStack 中找到,因此我们不需要显式定义它。 工作流拦截器的参数工作流拦截器仅定义了 1 个参数。
Validateabale 接口必须实现 Validateable 接口才能在操作类中执行验证逻辑。它只包含一个必须在操作类中重写的 validate() 方法来定义验证逻辑。validate 方法的签名是 ValidationAware 接口ValidationAware 接口可以接受 字段级别 或 操作类级别 的错误消息。字段级别的消息保存在 Map 中,操作类级别的消息保存在集合中。操作类应实现它以添加任何错误消息。 ValidatationAware 接口的方法ValidationAware 接口的方法如下
注意:ActionSupport 类实现了 Validateable 和 ValidationAware 接口,因此我们可以继承 ActionSupport 类来定义验证逻辑和错误消息。执行自定义验证的步骤步骤如下
执行自定义验证的示例在此示例中,我们正在创建 4 个页面
1) 创建 index.jsp 用于输入此 jsp 页面使用 struts UI 标签创建一个表单。它接收用户的姓名、密码和电子邮件 ID。 index.jsp2) 创建 action 类此操作类继承了 ActionSupport 类并重写了 validate 方法以定义验证逻辑。 RegisterAction.java3) 在 struts.xml 中定义一个 input 结果此 xml 文件定义了一个名为 input 的额外结果,如果操作类中找到任何错误消息,将调用该结果。 struts.xml4) 创建视图组件这是一个简单的 jsp 文件,显示用户的信息。 welcome.jsp输出![]() ![]() 定义操作级别错误消息操作级别错误消息适用于整个表单。我们可以通过在 validate() 方法中使用 ValidationAware 接口的 addActionError() 方法来定义操作级别错误消息。例如 现在您需要在 index.jsp 文件中使用 actionerror 标签来显示操作级别的错误消息。 index.jsp输出![]() ![]() 下一个主题Struts2 通过捆绑验证器进行验证 |
我们请求您订阅我们的新闻通讯以获取最新更新。