struts validator 的简单介绍(一)

花费时间找,但找到的几个地方的资料讲解均不是很系统,因此在这里大略介绍struts validator的使用.我所使用的是struts 1.3.8
首先要配置好struts-config.xml,如下:
xml 代码
 
  1. xml version="1.0" encoding="ISO-8859-1" ?>    
  2.     
  3.           "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"    
  4.           "http://struts.apache.org/dtds/struts-config_1_3.dtd">    
  5.     
  6. <struts-config>      
  7.     
  8.     
  9.     
  10.     <form-beans>      
  11.     <form-bean name="validationForm"  type="com.ibm.struts.validation.ValidationForm"/>               
  12.     <form-beans>     
  13.     
  14.     
  15.     
  16.     <global-forwards>    
  17.             
  18.             
  19.         <forward    
  20.             name="welcome"    
  21.             path="/Welcome.do"/>    
  22.     global-forwards>    
  23.     
  24.     
  25.     
  26.     
  27.     <action-mappings>    
  28.                 
  29.                 
  30.         <action    
  31.             path="/Welcome"    
  32.             forward="/pages/Welcome.jsp"/>    
  33.         <action path="/TestSimpleValidation"    
  34.                 forward="/pages/test_validation.jsp" />    
  35.         <action path="/SubmitValid"    
  36.                 type="com.ibm.struts.validation.ValidationAction"    
  37.                 name="validationForm"    
  38.                 scope="request"     
  39.                 validate="true"    
  40.                 input="/pages/test_validation.jsp">     
  41.           <forward name="success" path="/pages/success.jsp" redirect="true"/>    
  42.           <forward name="failure" path="/pages/test_validation.jsp"    
  43.                    redirect="true" />    
  44.         action>   
  45.     action-mappings>    
  46.     
  47.     
  48.     
  49.     
  50.     <message-resources parameter="MessageResources" >   
  51.   message-resources>    
  52.   <message-resources key="zh_CN" parameter="MessageResources_zh_CN" />    
  53.     
  54.     
  55.    
  56.       
  57.     
  58.   <plug-in className="org.apache.struts.validator.ValidatorPlugIn">    
  59.     <set-property    
  60.         property="pathnames"    
  61.         value="/org/apache/struts/validator/validator-rules.xml,    
  62.                /WEB-INF/validation.xml"/>    
  63.   plug-in>    
  64.     
  65. struts-config>   
上面59行至64行,增加validator的功能.第12行,设置form,第36行至45行,设置action,由于validator主要的使用不涉及form,action,因此这里不做详细介绍,要提的是form需要继承org.apache.struts.validator.ValidatorForm,

/WEB-INF/validation.xml文件介绍,这个文件主是要针对每个字段设置验证规则,
xml 代码
 
  1. xml version="1.0" encoding="ISO-8859-1" ?>  
  2.      "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.3.0//EN"  
  3.      "http://jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">  
  4.   
  5. <form-validation>  
  6.      
  7.     <formset>          
  8.           
  9.         <form name="validationForm">  
  10.             <field property="username" depends="required">  
  11.                 <arg key="prompt.username"/>  
  12.             field>  
  13.             <field  
  14.                 property="password"  
  15.                 depends="required,mask">  
  16.                     <arg key="prompt.password"/>  
  17.                     <var>  
  18.                         <var-name>maskvar-name>  
  19.                         <var-value>^t[0-9]n$var-value>  
  20.                     var>  
  21.             field>  
  22.         form>  
  23.   
  24.     formset>  
  25.   
  26. form-validation>  
容易理解的不做介绍,第11行depends=required的意思当然是该字段是必需的,不能为空,所在资源文件里的相应的错误信息是这样的"errors.required={0} is required.",接下来的第12行,就是定义{0}参数是用什么替代,用的是也是资源文件里的"prompt.username=\u5e10\u53f7"

资源文件
xml 代码
 
  1. # -- standard errors --  
  2. errors.header=validation error message  
  3. errors.prefix=<LI>  
  4. errors.suffix=LI>  
  5. errors.footer=UL>  
  6. # -- validator --  
  7. errors.invalid={0} is invalid.  
  8. errors.maxlength={0} can not be greater than {1} characters.  
  9. errors.minlength={0} can not be less than {1} characters.  
  10. errors.range={0} is not in the range {1} through {2}.  
  11. errors.required={0} is required.  
  12. errors.byte={0} must be an byte.  
  13. errors.date={0} is not a date.  
  14. errors.double={0} must be an double.  
  15. errors.float={0} must be an float.  
  16. errors.integer={0} must be an integer.  
  17. errors.long={0} must be an long.  
  18. errors.short={0} must be an short.  
  19. errors.creditcard={0} is not a valid credit card number.  
  20. errors.email={0} is an invalid e-mail address.  
  21. # -- other --  
  22. errors.cancel=Operation cancelled.  
  23. errors.detail={0}  
  24. errors.general=The process did not complete. Details should follow.  
  25. errors.token=Request could not be completed. Operation is not in sequence.  
  26. # -- welcome --  
  27. welcome.title=Struts Blank Application  
  28. welcome.heading=Welcome!  
  29. welcome.message=To get started on your own application, copy the struts-blank.war to a new WAR file using the name for your application. Place it in your container's "webapp" folder (or equivalent), and let your container auto-deploy the application. Edit the skeleton configuration files as needed, restart your container, and you are on your way! (You can find the MessageResources.properties file with this message in the /WEB-INF/src folder.)  
  30. valid.title=\u7b80\u5355\u9a8c\u8bc1  
  31. prompt.username=\u5e10\u53f7  
  32. prompt.password=\u5bc6\u7801  
  33. prompt.phone=\u7535\u8bdd\u53f7\u7801  
  34. prompt.email=E-Mail  
  35. prompt.url=URL  


最后,要在jsp里引用错误提示信息:
xml 代码
 
  1. <logic:messagesPresent>  
  2.    <bean:message key="errors.header"/>  
  3.    <ul>  
  4.    <html:messages id="error">  
  5.       <li><bean:write name="error"/></li>  
  6.    </html:messages>  
  7.    </ul><hr />  
  8. </logic:messagesPresent>  


将这一段代码放在body后面即可.

参考资源:
http://struts.apache.org/1.3.8/faqs/validator.html
http://struts.apache.org/1.3.8/userGuide/building_view.html#validator
struts-examples-1.3.8示例里有validator的例子
YOLOv11改进 | 引入SFSConv空间频率选择卷积(含SFSC3k2二次创新),空间频率特征协同作用,检测性能全面提升 本文提出在YOLOv11中引入SFSConv空间频率选择卷积模块,通过显式分离和动态融合空间域与频率域特征,解决传统卷积对多尺度目标检测的局限性。SFSConv包含空间频率分离、动态权重融合和协同特征重建三个核心机制,并进一步创新提出SFSC3k2结构,通过双路频率分支增强特征协同作用。该改进显著提升了YOLOv11在遥感、医学等多尺度复杂场景下的检测性能,实验显示在微小目标检测任务中mAP提升5%-10%。代码实现展示了SFSConv模块的核心逻辑及其在PyTorch中的高效实现。 阅读详情

相关推荐

【TCGA-CRC】TCGA数据读取

本文介绍了如何从TCGA数据库中处理结肠癌(COAD)和直肠癌(READ)的RNA测序数据。首先,通过data.table::fread函数读取基因表达量文件,并检查基因ID和基因名称的一致性。接着,批量读取所有样本的TPM(Transcripts Per Million)数据,并将其合并为表达矩阵。随后,通过匹配样本ID和文件名,确保表达矩阵的列名与样本ID一致。最后,筛选出编码蛋白质的基因,并将处理后的数据保存为Rdata文件。整个过程涉及数据读取、合并、匹配和筛选,为后续的基因表达分析提供了基础。

小八四爱吃甜食的博客 662

struts1 构建视图

URL:http://struts.apache.org/release/1.3.x/userGuide/building_view.html "What if I should fall right through the center of the earth... oh, and come out the other side, where people walk upside dow

seacean2000的专栏 1008

卫星动力学仿真模型开发之AI初试

以下是通过AI生成的一个简单的C语言仿真模型,用于模拟卫星的姿态、轨道动力学和运动学。该模型基于基本的物理公式,假设卫星在近地轨道上运行,并忽略了一些复杂的扰动因素(如大气阻力、太阳辐射压等)。姿态动力学描述了卫星绕其质心的旋转运动。轨道动力学描述了卫星在引力作用下的运动。姿态运动学描述了卫星姿态随时间的变化。

xspace的博客 569

struts1的验证(valicate.xml方式)

  struts1.3中测试通过。 1.采用静态formbean,写一个formbean类,但不写其中的validate方法。 ========================================  struts.xml   name="loginForm" input="/index.jsp" val

pttaag的专栏 1997

Spring Boot Jar包加密实战:用ClassFinal与Jasypt打造代码安全堡垒

Spring Boot代码加密与配置保护方案 针对Spring Boot项目源码和配置易被反编译的风险,本文提出ClassFinal字节码加密+Jasypt配置加密的组合方案。ClassFinal通过Maven插件对核心代码加密,运行时需JavaAgent加载,反编译后仅保留空方法体;Jasypt则采用强加密算法保护敏感配置。方案优势包括: 双重保护:ClassFinal加密业务逻辑,Jasypt加密数据库密码等配置 灵活部署:支持密码启动、机器绑定等安全策略 平滑集成:兼容Spring生态,动态解密结合配

墨夶的博客 1092

Struts学习笔记之ActionForm

Struts学习笔记之ActionForm Struts 中定义了一些JavaBeans,主要是以ActionForm为父类扩展开来的,如下图: ① org.apache.struts.action包中 public abstract class ActionForm implements Serializable public class DynaAc

lianjiewulj的专栏 315

6万字嵌入式最全八股文面试题大全及参考答案(持续更新)

进程上下文定义:进程上下文包含了进程执行时所需的所有信息,包括 CPU 寄存器的值、内核栈、任务控制块(TCB)等。作用:当进程被切换时,需要保存当前进程的上下文,并恢复下一个将要运行进程的上下文。中断上下文定义:中断上下文是指处理中断时 CPU 所处的状态,包括中断发生时的寄存器值等。作用:当中断发生时,CPU 会自动保存当前的上下文信息,并跳转到相应的中断处理程序。示例表格上下文描述进程上下文包含进程执行时的所有相关信息中断上下文处理中断时 CPU 所处的状态线程同步定义。

大模型大数据攻城狮的专栏 7921

validator-rules.xml配置文件

Validator框架可以很方便的实现对表单的验证,配合struts1框架的插件技术进行实现。 首先Validator框架有validation.xml和validation-rules.xml两个配置文件,我们需要配置validation.xml文件,并将这两个文件部署到Web应用的/WEB-INF文件夹下(建议),这里没有说到配置validator-rules.xml。因为这个配置文件中包含

zhuxinquan的博客 3301

18-XLINX的XC7A100T的BANK0引脚说明

DXP_0和 DXN_0是纯输入引脚,Xilinx Artix-7 FPGA 内部集成的一个片上监控模数转换器​ 的差分模拟输入对,模数转换器​的模拟信号输入端,将外部的模拟电压​ 采样并转换为内部的数字值,是一个单向的信号采集过程。它是与 VCCADC配对的关键引脚,共同为内部的精密模数转换器提供一个纯净、安静、独立的参考地平面。多FPGA同步配置: 在多FPGA系统中,主FPGA配置完成后,可以拉低从FPGA的 INIT_B使其等待,等所有FPGA都准备好后,再同时释放,实现同步启动。

weixin_44479192的博客 231

Python 爬虫实战:爬取万方数据文献信息

本文介绍了基于Python爬虫技术合规获取万方数据文献信息的方法。通过分析万方数据的请求机制与反爬策略,采用requests库结合Session维持合法会话,实现了文献标题、摘要、作者等核心元数据的提取。文章详细讲解了Token验证、动态请求构造、JSON数据解析等关键技术,并提供了完整可运行代码。同时强调严格遵守《万方数据知识服务平台用户协议》,控制请求频率,仅限学术研究使用。该方案为万方数据文献信息获取提供了标准化解决方案,支持数据清洗、结构化存储及后续分析应用。

2503_91057718的博客 2133

Struts2中,校验文件不起作用

1.确保配置文件的名字正确。例如:你的action名字是loginaction,那么你的配置文件名字为loginaction-valivalidation.xml 2.确保语法正确无报错 3.validator文件的第2-4行,这个东西决定了validator文件能否起作用。这一行规定了这个xml参照的dtd文件的位置,必须要和你的struts2的版本号相对应。 <?xml vers...

Timber666的博客 401

8-bit量化在YOLOv11中的部署实践-(使用PTQ、QAT量化技术实现模型体积压缩和推理加速)

本文系统介绍了YOLOv11模型量化技术,主要包括三个核心部分:首先阐述模型量化的基础理论,包括量化分类、数学原理和性能影响;其次分析YOLOv11架构特点及其量化敏感层;最后详细讲解训练后量化(PTQ)的具体实现流程。研究表明,8-bit量化可使YOLOv11模型大小缩减至1/4,推理速度提升1.7-2.3倍,精度损失控制在1%以内。文章特别强调了校准算法选择(如最小最大值法和KL散度法)对量化效果的关键影响,并提供了完整的代码实现示例,为YOLOv11的高效部署提供实用指导。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1624

TMS中Struts的改动

1. 改动类:org.apache.struts.util.PropertyMessageResources        改动方法:protected synchronized void loadLocale(String localeKey)        blocks(ADD Line331-336):            try {                sProps = new

slaser的专栏 1086

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Struts的两种验证方法!!!!!!!!!!!!!!!!!!!!

第一种:静态验证:用ActionForm中的validate()验证: 1.[color=red]login.jsp[/color]文件: [code] username : [/code] 2.[color=red]LoginForm.java[/color]文件: [code] public ActionErrors validate(ActionMapping map...

中庸之道 154

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ActionForm为什么不能转LazyDynaBean

我是struts初学者,在Struts in Action 这本书上看到了LazyDynaBean这段例子,想把它用在我的开发上,却发现在Action的execute()函数中,我想把用户输入的表单参数提取出来时,ActionForm不能转LazyDynaBean.上网找了好久,中文资料基本没有提到,后来找到一段英文资料: LazyDynaBean GotchasThe abo

Kevin的专栏 1038

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

No input attribute for mapping path

如这样的500错误:No input attribute for mapping path.  Validator要求页面做验证 解决办法一: 在struts_config.xml里的input 。使用ActionForm的输入校验时,应为对应的action元素增加input属性,该属性指定校验失败后的返回页面。必须增加input属性。解决办法二: 把struts_config.xml里的

shileican的专栏 1725

Struts使用Validator

Struts使用ValidatorValidator框架是一种可插拔的系统,validator-rules.xml文件用于以声明的方式插入执行验证时validator将要使用的验证例程。 启用Validator插件struts-config.xml文件里加入   plug-in className="org.apache.struts.validator.ValidatorPlugIn">   

tyrone的专栏 3708

Struts:validator验证框架详解(一)

Struts:Validator验证框架详解     我使用的是eclipse3.2和myeclipse5.5,服务器为Tomcat5.5,struts版本使用的是1.1。不废话。下面我们进入正题。 一、首先,演示一个最简单的Validator使用实例。(我这里只写出了重要代码和有变动的地方) 先看一下我的jsp文件login.jsp:name : pass

jianghe727的专栏 1279

使Struts支持Validator

要在Struts项目中使用Validator功能,首先需要配置Struts项目,使其支持Validator框架.Struts通过一个插件(Plugin)来使Struts项目支持Validator.这个Plugin由Struts默认提供,用户也可以自己开发自己的Validator Plugin.Struts默认提供的Plugin为:org.apache.struts.validator.Valida

吾欲乘风 2567

struts中使用validator

 刚开始用validator,需要注意较多的细节,再稍微明白些后,建议看看struts-example。为了抛砖引玉,写个例子:一。在struts-config.xml中加入:     value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" /> 在插件的配置中是通过pathnames属性来指定Validator的配

nalis的专栏 1119

在struts中使用Validator框架

 在struts中使用Validator框架 Validator验证框架Validatro框架以成为Jakarta的公共项目的一部分,可以从http://jakarta.apache.org/commons/下载单独的Validator框架,在Struts中已经呆了这个框架。Validator主要依赖两个jar包Jakarta-or

Materials gathered 478

在struts中使用validator做页面验证

1. 在struts-config.xml文件中加入validator插件,加入这个插件后你的应用就具别的使用validator的环境,但是,要想真正的使用它还需要其他的配置。如:2. 在struts-config.xml文件中添加ApplicationResources配置文件。如:添加此文件的作用是提供错误信息的非编程定制化和多语言支持。如果我们使用中文平台操作系统,则默认情况下将首先查找Ap

eric88的专栏 1186

Struts的validator框架验证

        经过为期近两个月的项目练习,了解了开发一个实际项目它的具体流程及在每一个阶段都做哪些工作。在技术上进一步一步熟悉了Struts框架中的相关内容。在这里我想谈一下有关Validator框架验证和Struts标签的相关内容。1.        Validator验证框架Validator框架验证已经克服在ActionForm Bean的validate()方法中写验规则

技术交流 991

struts2和jquery_validator简单使用

项目中时常会用到一些验证手段...由于在开发前需要对一些技术的定位!所以一般选择固定的验证框架和技术. 我在前台验证中使用的是jquery_validator.这是个容易上手的框架.个人感觉它和struts2结合在一起非常不错.下面讲下使用的过程. 准备的jar包:struts2可以到http://struts.apache.org/download.cgi下载 juery_val

yjw916622874的专栏 508

struts中validator框架学习笔记

1.将ActionForm改为ValidatorForm,若是DynaActionForm,则将struts配置文件中的form对象改为DynaActionForm,因为要使用Validator进行验证,只能是ValidatorForm或DynaValidatorForm两种。2.将org.apache.struts.validator下的validator-rules.xml里的内容考过来,

VSlogin学习笔记 705
上一篇: 关于struts的本地化的使用
下一篇: 前尘
shaoxiongwang
博客等级 码龄21年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值