더북(TheBook)

다음은 앞서 정의한 커맨드 객체로 모든 웹 요청 정보를 전달받는 예입니다.

 

커맨드 객체를 사용하여 파일 업로드하기

Example03Controller.java

package com.springmvc.chap09;

import java.io.File;
import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.web.bind.annotation.ModelAttribute;
...
@Controller
@RequestMapping("/exam03")
public class Example03Controller {

    @GetMapping("/form")
    public String requestForm(Member member) {
        return "webpage09_02";
    }

    @PostMapping("/form")
    public String submitForm(@ModelAttribute("member") Member member, HttpServletRequest request, HttpSession session) {
        String name = member.getName();
        String filename = member.getImageFile().getOriginalFilename();
        try {
            member.getImageFile().transferTo(new File("c:\\upload\\" + name + "_" + filename));
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "webpage09_submit";
    }
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.