gpt4 book ai didi

java - 设计模式来验证请求?

转载 作者:行者123 更新时间:2023-12-01 13:42:53 24 4
gpt4 key购买 nike

我有下面的界面。我正在使用 Java 7 和 Spring 3.0

public interface Maintain{

void save(Request request);
Request getRequest(String id);
void delete(Request request);
void update(Request request);

}

public class MaintainImpl implements Maintain{


public void save(Request request){

//Need to validate the request before saving.
//Need to throw run time exception if validation fails

}

public void getRequest(String id){

//Need to validate the id before getting the results.
//Need to throw run time exception if validation fails

}

//Similarly i need to implement other 2 methods


}

验证请求:我计划编写一个具有验证逻辑的 Interface 和 4 个 impl 类。

public interface validate{

boolan validate();
}



public class SaveRequestValidator implements validate{

public boolean validate(){
//validation logic
}

}





public class GetRequestValidator implements validate{

public boolean validate(){
//validation logic
}

}




public class DeleteRequestValidator implements validate{

public boolean validate(){
//validation logic
}

}



public class UpdateRequestValidator implements validate{

public boolean validate(){
//validation logic
}

}

现在我可以通过将所有这四个 validator 注入(inject) MaintainImpl.java 来执行验证吗?

这是好的做法吗?还有更好的设计吗?或者我可以将所有验证保留在一个类中并提供静态方法吗?

谢谢!

最佳答案

Spring 3 支持 JSR303 Bean Validation 规范 - http://docs.spring.io/spring/docs/3.0.0.RC3/reference/html/ch05s07.html .

这意味着您可以通过类上的注释来验证参数的某些方面(例如您的请求)。

如果您想实现自定义验证方法,那么您可能应该使用 javax.validation.ConstraintValidator。

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

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