티스토리 뷰
<form action="uploadPro.jsp" method="post" enctype="multipart/form-data">
이름 : <input type="text" name="name"><br>
파일 : <input type="file" name="file"><br>
<input type="submit" name="업로드"><br>
</form>
이렇게 enctype을 설정하게되면, 이전과 같은 방식으로 파라메터를 받아올 수가 없다.
http://servlets.com/cos/ 에서 받아 설치한 cos.lib 를 사용하면, MultipartRequest 를 사용할 수 있게 된다.
<%@page import="java.io.File"%>
<%@page import="com.oreilly.servlet.multipart.DefaultFileRenamePolicy"%>
<%@page import="com.oreilly.servlet.MultipartRequest"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<style></style>
<script type="text/javascript"></script>
</head>
<body>
<%
String saveDir = application.getRealPath("/ex0820/");
int maxSize = 1024*1024*100;
String encType = "UTF-8";
MultipartRequest multipartRequest
= new MultipartRequest(request, saveDir, maxSize, encType, new DefaultFileRenamePolicy());
out.write("이름 : " + multipartRequest.getParameter("name") + "<br>");
out.write("파일 : " + multipartRequest.getParameter("file") + "<br>"); //null 값을 갖는다.
out.write("업로드파일명 : " + multipartRequest.getFilesystemName("file") + "<br>");
out.write("원래파일명 : " + multipartRequest.getOriginalFileName("file") + "<br>");
File file = multipartRequest.getFile("file");
%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
파일용량 : <fmt:formatNumber value="<%=file.length() %>" groupingUsed="true"/>
</body>
</html>
너무 편리하게 파일업로드 기능이 구현되었다.
업로드 이후의 과정은 파일입출력과 폼처리이므로 이전에 살펴본 내용들을 사용해서 처리하면 된다.
'개발 > 개발 자료' 카테고리의 다른 글
(Android) TextView를 상속받아 글자 테두리 효과 추가하기 (1) | 2016.02.11 |
---|---|
(Android) 간단하게 TextView에 테두리 주기 (0) | 2016.02.11 |
(Linux) SVN 서버 설치 및 설정방법 (0) | 2016.02.06 |
mysql root 패스워드 분실 대처방법 (0) | 2015.12.27 |
(Android) 하나의 TextView에 여러가지 글자색 or 스타일 지정하기 (0) | 2015.12.21 |
댓글