List

월요일, 12월 07, 2015

파일 업로드


  • 처리 프로세서
    • view 단 화면에서 file 객체
      • <form  enctype="mulitpart/form-data">
      • <bean id ="multipartResolver"
      • class="org.스프링프레임워크.web.multipart.commons.CommonsMultipartResolver"/>
    • Controller
      • file 을 받는 객체 : MultipartFile 로 stream 처리됨
      • multipartFile
        • getOriginalFilename()을 활용해서 file 객체를 만듬
        • tranferTo(new File("경로","filename");
        • 특정 경로에 파일을 loading 처리
  • FileUploadCtrl.java 파일
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@Autowired
     private A01_ComService service;
    
    @RequestMapping(method=RequestMethod.GET)
    public String form(){
        
        return "a12_03/a04_fileupload";
    }
    
    @RequestMapping(method=RequestMethod.POST)
    public String upload(@RequestParam("addfile"
MultipartFile file,Model d){
         //실제 파일이 올라오는지?
        System.out.println("전송된 파일명 : "+ file.getOriginalFilename());
        System.out.println(service+"서비스는?");
        service.upload01(file);
        if(file.getOriginalFilename()!=null){
            d.addAttribute("isLoad""Y");
        }
        
        return "a12_03/a04_fileupload";
    }
cs

  • A01_ComService 파일
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@Service
public class A01_ComService {
    public void upload01(MultipartFile mpf){
        
//파일을 올려 놓을 경로
        String path="C:/Bootcamp/es/SpringWeb/WebContent/a12_03";
    
        File f = new File(path, mpf.getOriginalFilename());
        
        //Stream( MultipartFile ) ==> File(저장처리)
        
        System.out.println("테스트");
        
        try {
            mpf.transferTo(f);
        } catch (IllegalStateException | IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }
cs


두 파일을 컨테이너에 올려놓으면 단일 파일 올리기 끗


  • 뷰단

1
2
3
4
5
6
7
8
<form method="post" enctype="multipart/form-data">
    <input type="file" name="addfile"/><br>
    <input type="file" name="addfile"/><br>
    <input type="file" name="addfile"/><br>
    <input type="file" name="addfile"/><br>
    <input type="file" name="addfile"/><br>
    <input type="submit" value="파일업로드"/>
</form>
cs




댓글 없음:

댓글 쓰기