스프링 - 파일 업로드 처리
1. 입력받기(사용자로부터)
ㄱ. 입력받는 뷰페이지에서...
1. form에 enctype="multipart/form-data 속성 추가
<form id="frmWrite" name="frmWrite" method="post"
action='<c:url value="/reBoard/write.do"/>' enctype="multipart/form-data">
2. form 태그 내부에 받는 태그 넣기
<label for="upfile">첨부파일</label>
<input type="file" name="upfile" id="upfile">(최대 2M)
2. 서버에 파일 저장시키기
ㄱ. 업로드 위치 관련 설정 정보 파일 생성 및 추가 fileUpload.properties
ㄴ. context-common.xml에 빈등록 처리하기
<util:properties id="fileUploadProperties" location="classpath:/config/props/fileUpload.properties" />
ㄷ. 서비스 인터페이스, 서비스 구현 클래스에 파일 업로드처리부분 추가
1. 서비스 인터페이스: public List<Map<String, Object>> fileUpload(HttpServletRequest request);
2. 서비스 구현클래스: ReBoardServiceImpl 멤버변수로 추가하고 @Resource 설정
예) @Resource(name="fileUploadProperties")
private Properties fileProperties;
3. public List<Map<String, Object>> fileUpload(HttpServletRequest request); 메서드 구현
파일을 서버에 업로드 처리하고,
파일명, 파일이름(변경된), 원래파일명 Map에 키,밸류로 저장 => List에 Map들을 저장
3. 저장한 파일명과 파일사이즈, 원래 파일명을 포함해서 글내용을 DB에 저장하기
ㄱ. List에서 Map을 꺼내고 거기서 키로 밸류를 받아서 DB 테이블에 넣는다(다른 정보도 같이 받아서 DB 테이블에 저장)
'Spring' 카테고리의 다른 글
특정 시간에 작동하는 메서드 - 스케쥴러 설정하기 (0) | 2017.05.08 |
---|---|
인터셉터 - 로그인확인 (0) | 2017.04.12 |
스프링 프로젝트 설정파일들 간단분석 (0) | 2017.04.02 |
STS - 스프링 MVC 프로젝트 만들때 설정해야할것들 (1) | 2017.03.31 |
Controller 클래스 만들때 고려하기 (이클립스 기준) (0) | 2017.03.28 |