Spring 4일차

진창호·2023년 4월 24일
0

Spring

목록 보기
4/7

Spring은 File Upload를 지원한다.

File Upload를 하기 위해선 몇 개의 추가 기능을 넣어줘야 한다. 그 기능은 아래와 같다.

  1. pom.xml : commons-fileupload Library 추가

  1. servlet-context.xml : property 추가

  1. maxUploadSize : 최대 업로드 가능한 파일의 바이트 크기
  2. maxInMemorySize : 디스크에 임시 파일을 생성하기 전 메모리에 보관할 수 있는 최대 바이트 크기
  1. write.jsp : form 설정

  1. BoardDto.java : 멤버변수 추가

  1. FileInfoDto.java : 멤버변수 추가

  1. saveFolder : 저장된 폴더
  2. originFile : 원본 파일의 이름
  3. saveFile : 실제 저장된 파일의 이름
  1. BoardServiceImpl.java : 전체적인 수정

mfile.transferTo가 일어난 시점부터 사용자의 컴퓨터에 파일이 저장된다.
그리고 DB에는 파일의 이름만 저장된다.

  1. board.xml : 전체적인 수정


Spring은 File Download를 지원한다.

File Download를 하기 위해선 몇 개의 추가 기능을 넣어줘야 한다. 그 기능은 아래와 같다.

  1. list.jsp

  1. servlet-context.xml

  1. BoardController.java

  1. FileDownLoadView.java


Spring은 Interceptor를 지원한다.

실제 비즈니스 로직과는 분리되어 처리해야 하는 기능들을 넣을 때 Interceptor를 이용한다.
비슷한 기능으론 Filter와 AOP가 있다. 차이점은 아래와 같다.

Filter : Servlet Context -> Dispatcher Servlet에 적용됨.
Intercept : Handler Adapter -> Controller에 적용됨.
AOP : Controller -> Model에 적용됨.

Interceptor를 사용하기 위해선 HandlerInterceptor를 상속받아야 한다.
HandlerInterceptor가 제공하는 메서드는 아래와 같다.

각 메서드의 차이점은 아래 그림을 참고하자.

profile
백엔드 개발자

0개의 댓글