일거리/java2009. 4. 6. 14:54
파일 업로드 구현시 보통 form 을 multipart 를 사용하여 쉽게 구현한다.
문제는 multipart form에 있는 한글 값들이 로직으로 전달할때 깨진다는것이다.


* jsp에서 form 설정
<form name="form" method="post" action="manageUccImageAd.sys" enctype="multipart/form-data">
  <td> <input type="text" name="name"> </td>
  <td> <input type="file" name="file"> </td>

....



* 로직 구현
public BaseModelAndView testUpload(HttpServletRequest request, HttpServletResponse response) throws Exception{
 
MultipartHttpServletRequest multipartRequest = null;

try{
multipartRequest = (MultipartHttpServletRequest)request;
}catch(ClassCastException e){
return null;
}

String name = multipartRequest.getParameter("name");

name = new String(name.getBytes("8859_1"),"utf-8");


try{
MultipartFile multipartFile = multipartRequest.getFile("file");
......
}catch(IOException ioE){

}

.....

}
 
로직 구현시 위와 같이 처리 해준다면 한글이 깨지지 않는다.

Posted by 달곰네두목곰