为什么在Spring Source org.springframework.web.servlet.HandlerExecutionChain中有数组类型的拦截器和列表类型的interceptorList?这是必需的吗?

public class HandlerExecutionChain {

    private final Object handler;

    @Nullable
    private HandlerInterceptor[] interceptors;

    @Nullable
    private List<HandlerInterceptor> interceptorList;

    .....
}

最佳答案

当您查看the source code时,您会看到只有HandlerInterceptor[] interceptors仅在HandlerExecutionChain外返回:

public HandlerInterceptor[] getInterceptors() {


您也可以查看用于创建List<HandlerInterceptor> initInterceptorList(List<HandlerInterceptor> interceptorList。看起来interceptorList是一个集合,有助于创建interceptors数组,该数组随后暴露在外面。

关于java - 为什么Spring HandlerExecutionChain同时具有拦截器和拦截器列表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60273268/

10-08 21:16