当我上传大于100MB的文件时,Tomcat抛出org.apache.tomcat.util.http.fileupload.FileUploadBase.SizeLimitExceededException。我要处理此问题,并在文件大于100MB时重定向。这是我的处理程序,但是程序无法到达那里。异常是由Tomcat抛出的,而不是我抛出的。我的方法都没有抛出此异常。

public ModelAndView handleLargeFileException(FileUploadBase.SizeLimitExceededException e) {
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.setViewName("redirect:add");
    modelAndView.addObject("title", "Error");
    modelAndView.addObject("largeFile", true);

    return modelAndView;
}

最佳答案

@ControllerAdvice注释控制器类
使用@ExceptionHandler注释处理程序方法,如下所示。

@ExceptionHandler(SizeLimitExceededException .class)
public ModelAndView handleLargeFileException() {
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.setViewName("redirect:add");
    modelAndView.addObject("title", "Error");
    modelAndView.addObject("largeFile", true);

    return modelAndView;
}



有关更多详细信息,请参见this示例。

08-05 05:03
查看更多