- 1. 第七章:Struts 2验证机制主讲:刘雷
- 2. 本章内容Struts2输入基础校验应用
输入校验的重要性、
Struts2输入校验的实现方式
手动编程实现输入校验
校验框架实现输入校验
Struts2输入校验高级用法
自定义校验器
visitor校验器的应用方法
- 3. Struts2输入校验基础为什么要使用输入校验?
Struts2中的输入校验
手动编程方式:主要是通过在类中编写校验逻辑代码
使用struts2校验框架:把校验逻辑放到配置文件中,实现校验逻辑代码与业务逻辑代码的分离。
手动编程方式
方式一:重写validate()方法,在struts2框架中,专门用来校验数据的方法是validate()方法。开发者可以通过继承ActionSupport类,并重写validate()方法来完成输入校验。
方式二:重写validateXxx()方法:在struts2框架中,Action中可以包含多个处理逻辑,也就是类似于execute的多个方法,只是方法名不同,在struts.xml文件中配置Action时,可以指定method属性,框架将根据属性值来执行相应的逻辑。Struts2框架允许在Action中提供一个validateXxx()方法,专门校验xxx()这个处理逻辑。例如,有一个处理逻辑为regist()的方法,在Action中,就可以使用validateRegist()方法来校验这个处理逻辑。
- 4. 手动编程方式(一):重写validate()方法register.jsp
- 5. ValidateInExecute.java省略了setter()/getter()方法
- 6. struts.xml文件
- 7. 手动编程方式(二)重写validateXxx()方法省略了setter()/getter()方法
struts.xml与register.jsp见上述PPT
- 8. 手动编程方式(三)省略了setter()/getter()方法
- 9. (本页无文本内容)
- 10. struts.xml配置文件register.jsp见上述PPT
- 11. Struts2内置校验器
- 12. 校验器配置风格(一)
- 13. 校验器配置风格(二)
- 14. 验证框架注意通常要对哪个Action验证就需要给出相应的XxxAction-validation.xml文件,例如,如果要对UserAction进行验证就需要UserAction-validation.xml文件配置
如果要对同一个UserAction的不同方法reg()与login()分别进行验证,如何做呢?
这时需要给出二个不同的验证文件:命名规则如下:
UserAction-reg-validation.xml和UserAction-login-validation.xml
但是请注意UserAction-reg-validation.xml和UserAction-login-validation.xml中的reg与login不是指的reg()和login()的方法名,而是指在struts.xml中配置的action配置的name属性的名字.
- 15. 必填校验器required
- 16. required校验器示例
- 17. required校验器示例
- 18. required校验器示例
- 19. required校验器示例此实例要先访问action,因为访问action时,字段内容为空
- 20. requiredstring校验器
- 21. requiredstring校验器示例
- 22. requiredstring校验器示例
- 23. requiredstring校验器示例
- 24. stringlength校验器示例
- 25. requiredstring校验器示例
- 26. int校验器
- 27. int校验器示例
- 28. int校验器示例
- 29. int校验器示例
- 30. conversion校验器
- 31. conversion校验器示例
- 32. date校验器
- 33. date校验器示例
- 34. date校验器示例
- 35. date校验器示例
- 36. email与url校验器
- 37. email与url校验器示例
- 38. email与url校验器示例
- 39. email与url校验器示例
- 40. expression与fieldexpression校验器
- 41. expression与fieldexpression校验器示例
- 42. expression与fieldexpression校验器示例
- 43. expression与fieldexpression校验器示例
- 44. fieldexpression校验器示例
- 45. double校验器
- 46. double校验器示例
- 47. regex校验器
- 48. regex校验器示例
- 49. 自定义校验器
- 50. 自定义校验器示例
- 51. (本页无文本内容)
- 52. 自定义校验器示例
- 53. 自定义校验器示例
- 54. 谢谢!