struts2(6)------数据验证

struts2(6)
--------数据验证

在struts2中,任何一个普通的类,都可以作为"控制器"来使用,不需要强制继承任何类或实现任何接口

但为了控制器类(Action)的功能更加丰富,通常我们都会选择让Action类继承于ActionSupport,这个父类提供了许多其他的辅助功能


在提交表单的时候,如果没有给控件赋值,系统将会默认把""赋值给变量


""  --------代表,变量已经初始化, 已经分配内存空间,只不过,这个空间还没有存数据,这时候是可以调用变量的方法



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


如果是以超连接进行后,没有给变量赋值,变量的值是 NULL,表示内存中,还没有为变量分配内存空间,是不能用来存数据,一调用它的方法,就会产生"空指针异常"



-----------------------------------------------------------------------------
某些方法去验证,某些方法不验证



重写用于验证的方法是:

public String reg(){

}
public String test(){

}


@override
public void validateReg(){

}





-----------------------------------------

struts2中的验证框架,用于验证数据有的效性


name不能为空
pwd长度3-6,两次密码一致
age 必须在1-120之间
email电子邮件格式
tel 电话号码格式






配置验证框架的步骤:

1、创建一个web工程,导入struts2的框架
2、在web.xml文件,配置*.jsp
3、编写jsp页面
4、编写baseAction继承于ActionSupport,并且在类中编写属性以及get,set方法
5、编写普通Action继承于BaseAction,并且编写对应的方法
6、编写jsp页面显示结果
7、编写struts.xml关联jsp与action
------------------------------------------------------------------------
8、在与Action同一个包中,生成验证配置文件,必须满足:  类名-validation.xml
9、在struts.xml文件中配置result的name为"input",用于指定返回的页面

  <field name="name">
    <field-validator type="requiredstring">
      <param name="trim">true</param>                    去掉空格
      <message>验证失败以后要显示的消息</message>
    </field-validator>
  </field>



required:-----验证非字符串类型的数据类型非空

requiredstring:  ----验证字符串类型的数据非空

int:--------------验证整数的区值范围(min,max)

date:-------------是否满足日期类型的格式

fieldexpression:----验证字段的格式,一般用于验证两个字段的值是否相同(expression)

email  -------验证电子邮件的格式


stringlength:验证字符的长度   (minLength,maxLength)



regex:用于验证正则表达式  (expression)


在配置文件中,正则表达式的规则要以^开始,以$结束


^1(3|5|8)\d{9}$|^\d{3}-\d{8}$|^\d{4}-\d{7,8}$

<![CDATA[^1(3|5|8)\d{9}$|^\d{3}-\d{8}$|^\d{4}-\d{7,8}$]]>


如果配置文件名为: 

 类名-validation.xml

表示,对类中的每一个方法都会验证

#####################################################

如果配置文件名为: 

 类名-请求名称-validation.xml

表示,只对以指定请求名称来访问的方法进行验证



手动配置dtd文件tld标签

点 jar包》复制 (拖出去)xwork-validate-1.03>记事本打开
拷贝如下代码:
    "-//OpenSymphony Group//XWork Validator 1.0.3//EN"
    "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">


























在java类   \\d    \\w    

在xml文件中   \d   \w












<![CDATA[表达式]]>



<param name="expression"><![CDATA[表达式]]></param>



启用“短路验证”-----前面规则不通过,后面规则不运行


<field-validator type="requiredstring" short-circuit="true">



如果要验证ShwAction类中的方法,需要在与ShwAction类同一个包中创建一个配置文件,并且,配置文件的名称规必须满足:



类:          ShwAction.java

配置文件:   类名-validation.xml   (ShwAction-validation.xml)

------------------------------------------------------------------------------

struts2的验证框架有两种验证方式:

1、字段风格验证
特点:先声明要验证的字段,再指定,用哪些规则来验证

2、非字段风格验证:
特点:先声明规则,再指定,这些规则用于哪些字段

--------------------------------------
字段风格验证

  <field name="要验证的字段">
    <field-validator type="要使用的规则">
      <message>验证失败以后要显示的消息</message>
    </field-validator>
  </field>

示例:   requiredstring---用于验证字段串类型的数据非空(必须写内容)

  <field name="name">
    <field-validator type="requiredstring">
      <param name="trim">true</param>                    去掉空格
      <message>验证失败以后要显示的消息</message>
    </field-validator>
  </field>


------------------------------

如果同时对一个字段采用两种风格验证,非字段风格验证优先






























  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值