能解释用户的详细缺点。(您两次输入的密码不一致,请重新输入。)
见告用户详细缺点的根本上,能提示用户可能的精确输入。(没有找到与“Strus”干系的内容,你要找的是不是“Struts”。)
客户端输入校验利用客户端脚本,如 Javascript 写成。
<form action=“http://sfdsfds.jsp“onsubmit=“return true;”>
或:
<input type=“submit”onclick=“return validate();”>
优点: 在本机运行,速率快,不用提交到做事器
缺陷: 高等职员或黑客很随意马虎修改,使验证失落效。 验证脚本常日会是很大一段代码,增加了下载到客户真个韶光。
做事器端输入校验在做事器端校验数据是最稳妥的做法。由于常日用户很难修改验证条件。
现实运用中,总是客户端校验与做事器端校验相结合,以做事器端校验为主。
在Struts2.0框架中,也可以把某些做事器端校验自动转换为客户端校验。
做事器端校验的方法利用ActionSupport类的validate()方法。
框架会在调用execute()方法之前调用validate()方法。
validate() 方法利用 addFieldError( , ) 方法记录缺点。
如果没有缺点,才实行execute方法。如果有缺点,返回 ”input” 。
如果Action中有多个方法,可以利用 validateXxx 方法来验证单独的某个方法。
(个中,Xxx为要验证的方法名。)
实行顺序:(从先到后) validateXxxà validate(总会实行)
Struts 2.0 内置校验器必填校验器 required
必填字符串校验器 requiredstring
字符串长度校验器 stringlength
整数校验器 int
日期校验器 date
表达式校验器 expression
字段表达式校验器 fieldexpression
邮件地址校验器 email
网址校验器 url
转换校验器 conversion
正则表达式校验器 regex
配置内置校验器
配置保存在 ActionName-validation.xml 文件中。
<validators>
<field name=“username”>
<field-validator type=“requiredstring”>
<message> … </message>
</field-validator>
……
</field>
……
</validators>
<validators>适用于大略的校验逻辑。
validate()方法适用于较高等的校验逻辑。
输入框之间可能有繁芜的逻辑关系。
<validators> 和 validate() 方法是可以共存的。
小伙伴们学会了么?如果你们能做出以下的小实验,你就节制了。
页面有两个输入框,输入框条件是:必填,字符串的长度6-7位。
当第一个输入框输入6位的时候,第二个输入框要输入7位。
当第二个输入框输入6位的时候,第一个输入框要输入7位。 利用<validators>和validate()方法实现