Struts2-利用数据验证框架进行表单验证

本文介绍如何使用Struts2框架进行数据验证,包括编写Action类、配置验证规则及前端展示错误信息等步骤。通过具体示例展示了如何利用Struts2的验证插件实现字段级别的验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

几个错误点,纠结了半天时间,整理并记录下来。


数据验证有两种方式,第一种是利用Validateable接口的validate()方法进行数据验证,利用

ValidateAware接口的方法存储和获取错误信息;第二种方法是直接利用validate拦截器,这是一套验证框架。

本文主要讲解利用验证框架进行验证,参考http://java.chinaitlab.com/Struts/775522.html

  1. Action类。注意,必须继承ActionSupport类,不然无法将错误信息显示在前台。(因为ActionSupport类实现了ValidateAware接口,能显示错误信息)

    Action类没有特别要注意的地方。

  2. struts.xml中配置这个Action类。

    注意: 1)必须添加 resultname属性,转至登陆页面;

2) namespace的值跟后面的的登录页面.jsp中的namespace保持一致。

1,2步跟基本入门实例保持一致。


3. 编写验证配置文件。

1)命名为:<Action的类名>-validation.xml,  放在/classes文件下。

2)xwork-validator-1.0.2.dtd 放进Tomcat7/bin下面。

3)  验证内容如下所示:

<?xmlversion="1.0" encoding="UTF-8"?>
<!DOCTYPEvalidators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"xwork-validator-1.0.2.dtd">
<validators>
<fieldname="msg">
<field-validatortype="requiredstring">
<message>plsinput an user msg.</message>
</field-validator>
</field>
<fieldname="age">
<field-validatortype="int">
<paramname="min">18</param>
<paramname="max">50</param>
<message>mustgreater than 18 and less than 50.</message>
</field-validator>
</field>
</validators>

其他验证方式,除[requiredstringint],见说明。

  1. 编写登录页面login.jsp


<%@page language="java" import="java.util.*"pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags" %>

<html>
<head>
<title>datavalidatatiuon</title>
</head>
<body>
<s:formaction="Validate" namespace="/">
<s:textfieldname="msg" label="msg"/>
<s:textfieldname="age" label="age"/>
<s:fielderrorcssStyle="color: red"></s:fielderror>
<s:submit/>
</s:form>
</body>
</html>

注意:namespace的值与struts.xml中保持一致。


5.
测试页面,当输入不符合条件,会有红色字体提示。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值