# Spring17

제로·2023년 2월 12일
0

Spring

목록 보기
15/18

1. 스프링 파일 다운로드

  1. 환경설정
    1) 컨테이너에 다운로드 viewer 등록
    <bean id="download" class="springweb.a06_util.Z01_DownloadView/">

    2) 다운로드 viewer.java
    public class 클래스명 extends AbstractView{
    @Override
    protected void renderMergedOutputModel(Map<String, Object> model,
    HttpServletRequest request, HttpServletResponse response)
    throws Exception {
            1. 파일 객체 생성
            	파일다운로드 컨트롤러에서 모델명으로 온 파일의 파일명을 가져온다
                파일명 선언 -> 경로와 함께 파일 객체 생성
                String fname = (String) model.get("downloadFile");
            2. 파일 객체를 client에 전달하기 위한 repsponse객체 속성 선언 
            	파일을 클라이언트에 전달하기 위한 contentType 설정
                전달할 파일의 크기 설정
                헤더정보에 파일명을 입력(한글일 경우 encoding 처리)
                attachment;filename="파일명"
                헤더정보를 통해서 binary데이터 전송
            3. FileInputStream으로 파일 객체 탑재, response객체의 OutputStream으로 client에 스트림 보내기
            4. response 객체의 stream 자원해제
            }
       
    }

    3) controller
    d.addAttribute("downloadFile",fname);
    view단에서 요청값으로 받은 파일명을 모델데이터로 만들어서 viewer.java에서 확인할 수 있도록 한다.
profile
아자아자 화이팅

0개의 댓글

관련 채용 정보