Рубрики
Без рубрики

Spring MVC – Как обрабатывать исключение превышения максимального размера загрузки

– Spring MVC – Как обрабатывать исключение превышения максимального размера загрузки

Весной вы можете объявить @ControllerAdvice , чтобы поймать исключение с превышением максимального размера загрузки, подобное этому:

Решение

Зависит от типов Многопартийный решатель :

  1. Стандартный сервлетmultipartresolver – поймать Исключение MultipartException , см. этот пример .
  2. CommonsMultipartResolver – поймать Исключение MaxUploadSizeExceededException – обратитесь к этому примеру .
package com.mkyong.exception;

import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.multipart.MaxUploadSizeExceededException;
import org.springframework.web.multipart.MultipartException;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;

@ControllerAdvice
public class GlobalExceptionHandler {

    //StandardServletMultipartResolver
    @ExceptionHandler(MultipartException.class)
    public String handleError1(MultipartException e, RedirectAttributes redirectAttributes) {

        redirectAttributes.addFlashAttribute("message", e.getCause().getMessage());
        return "redirect:/uploadStatus";

    }

    //CommonsMultipartResolver
    @ExceptionHandler(MaxUploadSizeExceededException.class)
    public String handleError2(MaxUploadSizeExceededException e, RedirectAttributes redirectAttributes) {

        redirectAttributes.addFlashAttribute("message", e.getCause().getMessage());
        return "redirect:/uploadStatus";

    }

}

Рекомендации

  1. Поддержка составных частей Spring (загрузка файлов)

Оригинал: “https://mkyong.com/spring/spring-mvc-how-to-handle-max-upload-size-exceeded-exception/”