从 HandlerInterceptor 抛出 HTTP 状态代码异常

问题描述 投票:0回答:2

我正在尝试创建一个HandlerIntecerptor,其预处理的代码结构如下

    public boolean preHandle(HttpServletRequest req, HttpServletResponse res, Object handler) throws Exception {

    boolean check = //do something
    if(!check)
    {
        throw new HttpStatusCodeException(HttpStatus.TOO_MANY_REQUESTS); //This line gives cannot be instantiated error.
    }
    return check;
}

但它说类无法实例化。有没有办法从 preHandle 内部抛出 http 代码异常?

java spring http spring-mvc spring-boot
2个回答
13
投票

HttpStatusCodeException
是抽象的,无法实例化。

形成 Javadoc

公共抽象类 HttpStatusCodeException

使用

HttpClientErrorException
HttpServerErrorException


-1
投票

HttpStatusCodeException 是一个抽象类,这意味着如果不创建匿名内部类并首先重写抽象方法,则无法抛出它。

检查此问题以获取更多信息创建抽象类或匿名类的实例

© www.soinside.com 2019 - 2024. All rights reserved.