第十章 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. linux抓包命令-tcpdump命令详解

    最近调试支付接口的时候,遇到了一个奇怪的问题:我按照支付接口文档,对接支付通道,当消费业务正常后,调试查余和冲正的时候,支付通道的对接技术告诉我,系统没有我们支付系统的请求报文,数据库和日志中都没有, ...

  2. 【PYTHON】编码是个细致活

    python逆向获取DNS时用到一个函数socket.gethostbyaddr,传入本地主机地址后报错如下: UnicodeDecodeError: 'utf-8' codec can't deco ...

  3. vim 常用操作笔记

    跳转最后一行 :$ 或 shift+g 跳转第一行 :1 或 gg 设置自动换行 :set wrap 设置不自动换行 :set nowrap

  4. Mysql重复数据查询置为空

    前两天产品有个需求,相同的商品因为价格不同而分开展示,但是明细还是算一条明细,具体区分展示出商品的价格和数量信息,其他重复的商品信息要置空. 需求并不难,用程序代码循环处理就可以了.但是后面涉及到打印 ...

  5. Kattis - iBoard

    iBoard After years of success with a single-button mouse, a well known computer company has decided ...

  6. 安装和启动Elasticseach

    1.在windows上安装和启动Elasticseach 1.安装JDK,至少1.8.0_73以上版本,java -version2.下载和解压缩Elasticsearch安装包.Elasticsea ...

  7. [luogu2052 NOI2011] 道路修建 (树形dp)

    传送门 Description 在 W 星球上有 n 个国家.为了各自国家的经济发展,他们决定在各个国家 之间建设双向道路使得国家之间连通.但是每个国家的国王都很吝啬,他们只愿 意修建恰好 n – 1 ...

  8. InfoSYS-20170114

    1.描述Spring的事务机制 2.描述并发脏数据,如何避免 3.如何防止同一个请求重复提交(重复付款) 4.如何监控程序性能 5.CPU过高说明什么问题 通常是程序中有死循环, 参考 http:// ...

  9. 参数化取值策略Sequential

    1.Sequential+Each iteration(顺序方式+每次迭代更新取值),设置Run—Logic中action循环迭代11次,并运行以上脚本,结果如下:     2.Sequential+ ...

  10. C#基础概念 代码样例

    C# int与string一起操作时注意 1 int a1= 1; 2 string a2= "2"; 3 Console.WriteLine(a1+a2); 4 Console. ...