Spring学习点滴,《Spring in Action》笔记(六) - 编程入门网
rejectIfEmpty(errors, "login", "required.login" "Login is
required");if(!new Perl5util().match(PHONE_REGEXP,phone){ errors.reject
("invalide.phone","Phone number is invalid");} ValidationUtils.rejectIfEmpty
(errors, "login", "required.login" "Login is required");if(!new Perl5util().match
(PHONE_REGEXP,phone){ errors.reject("invalide.phone","Phone number is
invalid");}
最后,你需要把验证类注入给你的 CommandController 的 validator 属性 <property name="validator"> <bean class="com.unmi.MyValidator"/></property><property name="validator"> <bean class="com.unmi.MyValidator"/></property> Spring学习点滴,《Spring in Action》笔记(六)(3)时间:2011-08-18 unmi.cc 隔叶黄莺validate 方法会在 AbstractCommandController.handleRequestInternal(request,response) 之前 调用,SimpleFormController.onSubmit() 会在调用 doSubmitAction() 之后,把 errors 传递给 View 。这里的 Errors 就相当于 Struts 中的 ActionErros/ActionMessages。书中未提及如何在页面显示出 错信息(P263) 87. P262 中写的 StudentValidator 类有方法 validate()、validatePhone() 和 validateEmail() 方法,但是在 validate() 中却没有调用其他两个 validateXxx() 方法。(P262) 88. 在讨论下面的向导式表单之前,来闲话一下 Spring MVC。Spring MVC 相对它的 AOP 来控制事物 权限来说,名声太小了些,多数人都会选择用其他的 MVC 框架,如 Struts1/Strus2/WebWork/JSF 等, Spring MVC 只能说它与 IOC 结合紧密,实际的设计上似乎过于复杂,不易于使用。 89. 譬如 Controller 的类层次太多,继承这个 Controller 类要实现这个方法,继承那个 Controller 类要实现那个方法,有些麻烦。尤其是在维护代码时,如果发现原有的 Controller 类不适 合现在场景需要切换到继承另一个 Controller 时,要实现的方法名又得改改。对于容许多种 HandlerMapping (URL 映射到哪个 Controller) 的并存会让开发者有时茫然不知所措,某个 URL 会导向 到哪里不清淅。 90. Spring MVC 中把输入验证逻辑与数据对象分离,还是很值得肯定的。不过 Spring MVC 中用代码 来校验的做法这相比于 Struts 和 WebWork 中用配置方式来进行验证要纸级一些。还不知道 Spring MVC 支不支持配置方式来验证输入数据的合法性。还有就是前面提过,ModelAndView 只适于传递一个属性到 请求中,当有多个请求属性仍需用 Servlet API 来塞值。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |