2013. 7. 29. 15:19


test1.jsp
제목:
//req.getParameter(“subject”) = null 파일:
//form 객체에 enctype 속성을 주면 기존처럼 request객체의 getParameter로 받는것은 불가능하다. //해당 속성이 없으면 전송한 파일의 제목만 가져올뿐 파일의 내용은 알 수 없다. test1_ok.jsp out.print("request로 넘어온 데이터
"); DataInputStream dis = new DataInputStream(request.getInputStream()); String str; while((str=dis.readLine())!= null) { out.print(new String(str.getBytes("ISO-8859-1"), "euc-kr") + "
"); }//form에서 전송된 파일을 출력

test2.jsp
이름:
제목:
파일:
test2_ok.jsp <% String root = session.getServletContext().getRealPath("/");//서블릿에서 루트경로 구하기 → D:\web\work\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\study\ String pathname = root + File.separator + "saveFile"; File f = new File(pathname); if(! f.exists()) //폴더가 존재하지 않으면 폴더 작성 f.mkdirs(); String encType = "UTF-8"; int maxFilesize = 5*1024*1024; //MultipartRequest(request, 파일을 저장할 경로, 문자셋, 동일한 파일명 보호(덮어쓰기방지)) MultipartRequest mr = new MultipartRequest(request, pathname, maxFilesize, encType, new DefaultFileRenamePolicy()); //사실상 이부분에서 업로드가 완료됨 String name = mr.getParameter("name"); String subject = mr.getParameter("subject"); String saveFilename = mr.getFilesystemName("upload"); //서버에저장된파일명 String originalFilename = mr.getOriginalFileName("upload"); //클라이언트가업로드한파일명 long fileSize = mr.getFile("upload").length(); //File.length() 파일의 길이, return long %> 이름:<%=name %>
제목:<%=subject %>
클라이언트가업로드한파일명:<%=originalFilename %>
서버에저장된파일명:<%=saveFilename %>
파일의크기:<%=fileSize %>Bytes.


'JSP > JspServlet' 카테고리의 다른 글

MVC 관련 핸들러 매핑 및 컨트롤러  (0) 2013.07.29
액션 태그와 커스텀 태그  (0) 2013.07.29
포워딩과 리다이렉트  (0) 2013.07.29
JSP 페이지기본설정  (0) 2013.07.29
JSTL  (0) 2013.07.29
Posted by 1+1은?