要求:在JSP中实现文件上传
前提:上传前,先加载上传文件所需的cos.jar包
//上传页面(如:index.jsp)
前提:上传前,先加载上传文件所需的cos.jar包
//上传页面(如:index.jsp)
<%@ page language="java" import="java.util.*" pageEncoding="gbk" contentType="text/html; charset=gbk"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>在JSP中实现文件上传</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form name="form1" enctype="multi/form-data" action="result.jsp"method="post">
<p>
<input type="file" name="file1">
</p>
<p>
<input type="file" name="file2">
</p>
<p>
<input type="file" name="file3">
</p>
<p>
<input type="submit" name="submit" value="上传文件">
</p>
</form>
</body>
</html>
//处理上传页面(如:result.jsp)
<%@ page language="java" pageEncoding="gbk" contentType="text/html; charset=gbk"%>
<%@ page import="java.util.*"%>
<%@ page import="java.io.*"%>
<%@ page import="com.oreilly.servlet.multipart.*"%>
<%@ page import="com.oreilly.servlet.MultipartRequest"%>
<%
//saveText:上传的文件存放的目标路径
String saveText = "c:\\1010";
//每个上传文件大小(3是每次最多上传的文件个数;20是每个文件大小;1024*1024是进制)
int maxSize = 3*20*1024*1024;
//上传文件:参数一是请求方式;参数二是存放目标路径;参数三是上传文件大小;参数四是简体中文
MultipartRequest multi = new MultipartRequest(request,saveText,maxSize,"gb2312");
//通过集合的枚举类型(Enumeration),打印
Enumeration files = multi.getParameterNames(); //由multi中,获得所有上传文件
while(files.hasMoreElements())
{
String files_name = (String)files.nextElement(); //由枚举类型变量files中,循环获得所有上传文件files_name
File f = multi.getFile(files_name); //由所有上传文件files_name中,获得每个上传文件f
if(f!=null)
{
//获得每个上传文件的名称file_name
String file_name = multi.getFilesystemName(files_name);
String last_name = saveText+"\\"+file_name;
out.print("上传的文件是:"+last_name);
out.print("<hr>");
}
}
%>