举例来说,你有一堆功能都需要检查登录验证。首先,它看起来是这样的:如何在另一个函数中封装函数的验证?
public Response createThing(){
if(!validLogin(httpRequest, uriInfo)){
return Response.status(Response.Status.FORBIDDEN);
}
//Do the function
}
这代码第一个块存在于每一个服务调用的顶部,但我不知道如何将它包装成另一种功能,因为它包含了一个return语句。我想类似下面的内容:
public Response createThing(){
validateLogin(httpRequest, uriInfo);
//Do the function
}
或
public Response createThing(){
//Implied check somehow?
//Do the function
}
我敢肯定有一些图案或约定,在那里,人们使用。谢谢。
这是JavaEE吗?你会用这个过滤器。我相信一般模式被称为“拦截过滤器” – puhlen
它可以把它作为你的验证方法引发的异常处理,并在你的包装方法中处理?例如,自定义异常? – Rhayene
对于这个特定的情况,是的,它是JavaEE,但是我也有类似的底层调用的相同问题(例如验证输入不为空)。我会看看拦截过滤器,谢谢。 – GuitarStrum