W e S D
0 1

[JavaWeb基础] 015.Struts2 表单验证框架

在web开发的过程中,我们经常要用到一些填写表单的操作,我们一般都要在提交表单信息的时候对表单的内容进行验证,struts2给我们提供了简单的实现接口,让我们可以很容易的对表单进行验证。下面讲解下最传统的方法配置表单验证框架,还有更简单明了的就是利用注解,这里就不解释了。

1.首先我们要在要进行配置的Action的同级目录下,新建一个.xml文件,命名格式为:ActionClassName-validation.xml。

   例如我的Action类名为:RegisterAction   那么xml名称为:RegisterAction-validation.xml

   要特别注意:

      1)Action要继承ActionSupport

      2)XML的头:<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">

 内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?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>
    <field name="userName">
        <field-validator type="requiredstring">
            <message>必须输入用户名</message>
        </field-validator>
    </field>
     
    <field name="password">
        <field-validator type="stringlength">
            <param name="minLength">6</param>
            <param name="maxLength">10</param>
            <message>密码长度6-10</message>
        </field-validator>
    </field>
     
    <field name="validCode">
        <field-validator type="requiredstring">
           <message>必须输入验证码</message>
        </field-validator>
    </field>
</validators>

 2.配置struts.xml

   配置success是成功后跳转

   配置input是验证失败后跳转

1
2
3
4
<action name="register" class="com.babybus.sdteam.action.RegisterAction"> 
    <result name="success">/Success.jsp</result>
    <result name="input">/Register.jsp</result>    
</action>

 3.接下来就是jsp文件

1
2
3
4
5
6
<s:form action="register" method="post"> 
   <s:textfield name="userName" label="用户名" />
   <s:textfield name="password" label="密码" /> 
   <s:textfield name="validCode" label="验证码" /> 
   <s:submit   value="注册" /> 
</s:form>

 4.页面结果

 

 

结语

 

  • 受益,熟悉Struts2 验证框架

 

 

 

 

 

本站文章为 宝宝巴士 SD.Team 原创,转载务必在明显处注明:(作者官方网站: 宝宝巴士 

转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4774011.html

posted @   SD.Team  阅读(596)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示