클라이언트가 multipart파일 업로드 기능을 할 수 있는 서비스를 구현 중인데, 테스트단계에서 너무 많은 용량을 차지해 사용 중인 프리티어 스토리지에 부담이 될 경우를 생각해 업로드 용량에 제한을 두고 싶어 졌다.
properties 파일의 아래의 코드를 추가해 준다.
spring.servlet.multipart.max-file-size=50MB
spring.servlet.multipart.max-request-size=50MB
spring.servlet.multipart.resolve-lazily=true
우선 max-file-size는 파일의 용량을 50MB로 제한을 두고 max-request-size는 한 번의 요청에 50MB가 넘지 않도록 제한을 두는 것이다. 그리고 만약 GlobalExceptionHandler로 예외를 컨트롤하고 있다면 resolve-lazily를 true로 해주어야 한다.
이유는 만약 설정을 해주지 않는다면 MVC에서 예외를 잡기 전에 먼저 예외가 터져버린다. 따라서 지연설정을 해주어서 예외를 컨트롤할 수 있게 한다.