我正在编写一些帮助代码来使用构建器模式将构建器添加到我的域模型中。我已经构建了代码的基本部分,但我想添加另一个构建方法来验证新构建的对象。我设想这个新方法将接受一个类来匹配我的 bean 验证中的组。因此,当我从构建器取回对象时,我知道它是我想要的状态的有效对象。关于这种方法,我有两个问题。
首先,这听起来像是一个好方法吗?我在网上没有看到任何关于这样做的信息,但我认为将它放在构建器中是个好主意。
下一个问题,让验证器进入构建器的好方法是什么?我应该尝试将其自动连接还是其他?
我正在编写一些帮助代码来使用构建器模式将构建器添加到我的域模型中。我已经构建了代码的基本部分,但我想添加另一个构建方法来验证新构建的对象。我设想这个新方法将接受一个类来匹配我的 bean 验证中的组。因此,当我从构建器取回对象时,我知道它是我想要的状态的有效对象。关于这种方法,我有两个问题。
首先,这听起来像是一个好方法吗?我在网上没有看到任何关于这样做的信息,但我认为将它放在构建器中是个好主意。
下一个问题,让验证器进入构建器的好方法是什么?我应该尝试将其自动连接还是其他?
使用构建器模式是构造对象的好方法,因此它应该可以很好地满足您的目的。你说你想添加另一个构建方法。这是否暗示您将有 2 种构建方法 - 一种验证,另一种不验证?我只有一种方法,所以你可以确定你的对象是有效的。
对于如何验证,Spring 文档讨论了使用 JSR-303 http://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/validation.html进行验证
在构建 Spring 应用程序时要记住一些事情。考虑一下 grails 是否会引起您的兴趣。其中一部分是域对象验证,它具有构建用于测试的对象以进行验证的能力。显然,如果您要使用 grails,您会想要使用更多的功能,但只是想注意它。