第十章 Struts 2的输入校验

1 Struts 2 输入校验原理

a . 分类 validate()方法校验

b . validation框架校验

2 valibate()方法校验实现

步骤  I  Action类继承ActionSupport

II 重写pulic void validate()方法,在其中编写相关校验规则;

III 在Sturts.xml 文件中添加

<result name=”input”>(name取值必须为”input”)

/资源

</result>

注意: 在validate方法中若校验未通过则利用ActionSupport类中定义的addFiledError(“ Fieldname ” , ” 提示信息 ” )设定提示信息,而在信息显示页面中<s : fielderror fieldname=”Fieldname”/>

validateXxx()方法 完成校验

I  xxx对应Action中创建的public String xxx()方法

II validateXxx()方法仅对xxx()访问进行校验

3 validation校验框架 ------ xml文件

1分类 a字段校验 b 非字段校验

2 字段校验

<field name=”字段名”>

<field- validator type=”校验器名” [short-circuit=”false/true”]>

<param name=”参数名”>参数值</param>

<message [key=””]>提示信息</message>

</field-validator>

</field>

3 非字段校验器

格式:<validators>

<validator type=”校验器名”  [short-circuit=”false/true”]>

<param name=”fieldname”>字段名</param>

<message [key]=’””>提示信息</message>

</validator>

</validators>

注意: 1校验文件命名为ActionName-validation.xml,文件置于action类同目录下

2 Action类集成ActionSupport,struts.xml文件中添加<result name=”input”>

显示信息页面添加 <s:fielderror>

3 做单一请求校验需将校验文件名改写为ActionName-请求格式-validation.xml

struts2学习之基础笔记5的更多相关文章

  1. struts2学习之基础笔记6

    第十一章 Struts 2的国际化 1 国际化简介 http协议,request_locale值 Locale类àà封装类request_locale值       ResourcesBandleàà ...

  2. struts2学习之基础笔记2

    6.5 Struts2 的基本配置 1web.xml 作用:加载核心过滤器 格式: <filter> ``````` </filter> <filter-mapping& ...

  3. struts2学习之基础笔记1

    第6章 Strusts 2框架 1  引出 Web App  àà MVC  àà View 视图(jsp,html,JS) | C(Servlet)Filter,Listneer | M(数据bea ...

  4. struts2学习之基础笔记8

    文件的上传和下载 上传 步骤1:在文件上传表单中设置method和enctype属性值 格式:<s:form method=”post” enctype =”multipart/ form.da ...

  5. struts2学习之基础笔记7

    第十二章 Struts 2的标记库 1 OGNL简介 Object-Grephic Navigtor Language 图对象导航语言 作用:图对象导航语言是Struts 2标记库中为其相应标记属性进 ...

  6. struts2学习之基础笔记3

    第8章Struts 2类型转换 使用类型转换器 自定义类型转换器 步骤:1. Struts 2 构建流程 2.自定义类型转换器类(继承 DefaultTypeConverter /StrutsType ...

  7. struts2学习之基础笔记4

    拦截器 1.自定义拦截器类,必须继承AbstractInterceptor类(抽象类) 重写public String intercept (ActionInvocation arg0) 2.在Str ...

  8. 学习webpack基础笔记01

    学习webpack基础笔记 1.webpack搭建环境最重要的就是如何使用loader和plugins,使用yarn/npm安装插件.预处理器,正确的配置好去使用 2.从0配置webpack - 1. ...

  9. bash shell学习-正则表达式基础 (笔记)

    A gentleman is open-minded and optimistic; a small person is narrow-minded and pessimistic. "君子 ...

随机推荐

  1. 优动漫PAINT(clip studio paint)提示无法连接服务器

    很多同学在使用优动漫PAINT进行艺术创作的时候,软件会出现无法连接服务器的提示,遇到此情况如何解决呢?目前,软件在Windows系统和Mac系统上的解决方法有别,请悉知: 1.曾使用过,或正在使用F ...

  2. Dynamics 365 CRM 部署 Connected Field Service

    微软 Connected Field Service 是一个提供Azure IoT 和 Dynamics 365 连接的这样一个框架 有两种方式部署CFS, 一种是用IoT Hub PaaS, 一种是 ...

  3. 文字横向滚动marquee

    <div style="width:200px; height:300px"> <marquee behavior="scroll" cont ...

  4. python编写简单的html登陆页面(2)

    1  在python编写简单的html登陆页面(1)的基础上在延伸一下: 可以将动态分配数据,实现页面跳转功能: 2  跳转到新的页面:return render_template('home1.ht ...

  5. CentOS6.5 静默安装Oracle 11g过程中提示:Exception in thread “main” java.lang.NoClassDefFoundError

    原来是系统中设置了DISPLAY环境变量,执行: [oracle@qa26 database]$ ./runInstaller  -silent -responseFile /usr/local/or ...

  6. Swagger在 NETcore 中的使用

    请参考 https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-swashbuckle?view=asp ...

  7. C 语言预编译 #if #else

    这个方法我一般用来调试的时候用,有时候串口打印信息太多,一条条注释就很麻烦,于是就用这种方法,定义个宏变量,判断宏变量的条件,来达到改变宏变量的值控制那些代码编译,那些不编译的目的,这样就不用一条条代 ...

  8. struct 模块解决 TCP黏包问题

    首先来看一下产生黏包现象的一段代码: # server.py 服务端 import socket ​ sk = socket.socket() sk.bind(('127.0.0.1',9000)) ...

  9. 使用Word2016直接发布博客

    使用Word2016直接发布博客

  10. 转载:手游安全破“黑”行动:向黑产业链说NO

    目前的手游市场已被称为红海.从业界认为的2013年的“手游元年”至今,手游发展可谓是既经历了市场的野蛮生长,也有百家争鸣的战国时代.如今,手游市场竞争已趋白热化,增长放缓.但移动互联网的发展大势之下, ...