- 처리 프로세서
- 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 |
댓글 없음:
댓글 쓰기