struts2学习之基础笔记5
第十章 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的更多相关文章
- struts2学习之基础笔记6
第十一章 Struts 2的国际化 1 国际化简介 http协议,request_locale值 Locale类àà封装类request_locale值 ResourcesBandleàà ...
- struts2学习之基础笔记2
6.5 Struts2 的基本配置 1web.xml 作用:加载核心过滤器 格式: <filter> ``````` </filter> <filter-mapping& ...
- struts2学习之基础笔记1
第6章 Strusts 2框架 1 引出 Web App àà MVC àà View 视图(jsp,html,JS) | C(Servlet)Filter,Listneer | M(数据bea ...
- struts2学习之基础笔记8
文件的上传和下载 上传 步骤1:在文件上传表单中设置method和enctype属性值 格式:<s:form method=”post” enctype =”multipart/ form.da ...
- struts2学习之基础笔记7
第十二章 Struts 2的标记库 1 OGNL简介 Object-Grephic Navigtor Language 图对象导航语言 作用:图对象导航语言是Struts 2标记库中为其相应标记属性进 ...
- struts2学习之基础笔记3
第8章Struts 2类型转换 使用类型转换器 自定义类型转换器 步骤:1. Struts 2 构建流程 2.自定义类型转换器类(继承 DefaultTypeConverter /StrutsType ...
- struts2学习之基础笔记4
拦截器 1.自定义拦截器类,必须继承AbstractInterceptor类(抽象类) 重写public String intercept (ActionInvocation arg0) 2.在Str ...
- 学习webpack基础笔记01
学习webpack基础笔记 1.webpack搭建环境最重要的就是如何使用loader和plugins,使用yarn/npm安装插件.预处理器,正确的配置好去使用 2.从0配置webpack - 1. ...
- bash shell学习-正则表达式基础 (笔记)
A gentleman is open-minded and optimistic; a small person is narrow-minded and pessimistic. "君子 ...
随机推荐
- linux抓包命令-tcpdump命令详解
最近调试支付接口的时候,遇到了一个奇怪的问题:我按照支付接口文档,对接支付通道,当消费业务正常后,调试查余和冲正的时候,支付通道的对接技术告诉我,系统没有我们支付系统的请求报文,数据库和日志中都没有, ...
- 【PYTHON】编码是个细致活
python逆向获取DNS时用到一个函数socket.gethostbyaddr,传入本地主机地址后报错如下: UnicodeDecodeError: 'utf-8' codec can't deco ...
- vim 常用操作笔记
跳转最后一行 :$ 或 shift+g 跳转第一行 :1 或 gg 设置自动换行 :set wrap 设置不自动换行 :set nowrap
- Mysql重复数据查询置为空
前两天产品有个需求,相同的商品因为价格不同而分开展示,但是明细还是算一条明细,具体区分展示出商品的价格和数量信息,其他重复的商品信息要置空. 需求并不难,用程序代码循环处理就可以了.但是后面涉及到打印 ...
- Kattis - iBoard
iBoard After years of success with a single-button mouse, a well known computer company has decided ...
- 安装和启动Elasticseach
1.在windows上安装和启动Elasticseach 1.安装JDK,至少1.8.0_73以上版本,java -version2.下载和解压缩Elasticsearch安装包.Elasticsea ...
- [luogu2052 NOI2011] 道路修建 (树形dp)
传送门 Description 在 W 星球上有 n 个国家.为了各自国家的经济发展,他们决定在各个国家 之间建设双向道路使得国家之间连通.但是每个国家的国王都很吝啬,他们只愿 意修建恰好 n – 1 ...
- InfoSYS-20170114
1.描述Spring的事务机制 2.描述并发脏数据,如何避免 3.如何防止同一个请求重复提交(重复付款) 4.如何监控程序性能 5.CPU过高说明什么问题 通常是程序中有死循环, 参考 http:// ...
- 参数化取值策略Sequential
1.Sequential+Each iteration(顺序方式+每次迭代更新取值),设置Run—Logic中action循环迭代11次,并运行以上脚本,结果如下: 2.Sequential+ ...
- C#基础概念 代码样例
C# int与string一起操作时注意 1 int a1= 1; 2 string a2= "2"; 3 Console.WriteLine(a1+a2); 4 Console. ...