gpt4 book ai didi

java - 验证设计模式

转载 作者:行者123 更新时间:2023-12-02 07:32:20 25 4
gpt4 key购买 nike

我正在 spring+hibernate+annotations 上开发我的项目。我需要对数据应用一组验证。

目前代码看起来像这样。

public class SomeClass{
boolean error = false;
if(!error){
check condition1
if(fails) {
error = true;
}
}

if(!error){
check condition2
if(fails) {
error = true;
}
}

if(!error){
check condition3
if(fails) {
error = true;
}
}

// similarly i have 5 to 10 validations.
}

是否有任何设计模式可以替代上述场景。

谢谢。

最佳答案

spring提供了验证类,参见org.springframework.validation
该引用资料提供了 spring 处理验证错误的方式的完整教程。 http://static.springsource.org/spring/docs/2.5.x/reference/validation.html

在我当前的项目中,我们更进一步,创建了一个抽象的 ValidationTemplate 类。我们有 2 个方法,一个是使用 List
调用抽象方法的 validate 方法当我们想要验证时,我们可以创建该抽象类的匿名实例并实现 doInValidation 方法。这使您能够

new ValidationTemplate(){
doInValidation(List<Error> errors){
if(!condition) {
errors.add(new Error("reason");
}
}.validate();

你可以根据需要实现验证方法,如果你想要更优雅的结果,你可以抛出异常或返回有错误的列表。
不幸的是,我无法发布确切的源代码,而是发布这段伪代码。

关于java - 验证设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6547459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com