目录
对是否把校验当作业务逻辑这个问题,存在着正和反两种意见,而Spring提供的验证模式(和数据绑定)的设计对这两种意见都不排斥。特别是,校验应该不应该被强制绑定在Web层,而且应该很容易本地化并且可以方便地加入新的验证逻辑。基于上述的考虑,Spring提供了一个Validator
接口。这是一个基础的接口并且适用于应用程序的任何一个层面。
数据绑定(Data binding)非常有用,它可以动态把用户输入与应用程序的域模型(或者你用于处理用户输入的对象)绑定起来。Spring针对此提供了所谓的DataBinder
来完成这一功能。由Validator
和DataBinder
组成的validation
验证包,主要被用于Spring的MVC框架。当然,他们同样可以被用于其他需要的地方。
BeanWrapper
作为一个基础组件被用在了Spring框架中的很多地方。不过,你可能很少会需要直接使用BeanWrapper
。由于这是一篇参考文档,因而我们觉得对此稍作解释还是有必要的。我们在这一章节里对BeanWrapper
的说明,或许到了你日后试图进行类似对象与数据之间的绑定这种与BeanWrapper
非常相关的操作时会有一些帮助。
Spring大量地使用了PropertyEditor
(属性编辑器)。PropertyEditor
的概念是JavaBean规范的一部分。正如上面提到的BeanWrapper
一样,由于它与BeanWrapper
以及DataBinder三者之间有着密切的联系,我们在这里同样对PropertyEditor
作一番解释。