upload.jsp、这里要上传的是照片,这里属于上传文件,所以type的类型应该是file类型,然后再jsp中上传file类型的文件一定要将method后面添加一项enctype=“multipart/form-data”!!!然后form表单中最后写submit用来提交form表单的内容到action中的FileUploadServlet。。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String context = request.getContextPath();// /dt41_javaweb2
String path = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+context+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=path %>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>文件上传</title>
</head>
<body>
<form action="<%=path %>/FileUploadServlet" method="post" enctype="multipart/form-data">
<p>用户名:<input type="text" name="username"></p>
<p>大头照1:<input type="file" name="bigHendImage1"></p>
<p>大头照2:<input type="file" name="bigHendImage2"></p>
<p>大头照3:<input type="file" name="bigHendImage3"></p>
<p><input type="submit" value="提交"></p>
</form>
</body>
</html>
package cn.java.servlet;
import java.io.IOException;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONObject;
import cn.java.utils.HttpClientUtil;
import cn.java.utils.UploadUtils;
/**
* Servlet implementation class SendMsgServlet
*/
@WebServlet("/FileUploadServlet")
public class FileUploadServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Map<String, Object> map=UploadUtils.UploadFile(request, "upload","utf-8",1024*1024*6,1024*1024*18);
System.out.println(map);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,
IOException {
doGet(request, response);
}
}
这里在导入的jar包(UploadUtils.class)封装了相应的方法,所以直接调用UploadUtils.UploadFile(。。。) 就可以实现文件上传了。
这里导入了这三个jar包。。
FileUploadServlet.java
package cn.java.servlet;
import java.io.IOException;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONObject;
import cn.java.utils.HttpClientUtil;
import cn.java.utils.UploadUtils;
/**
* Servlet implementation class SendMsgServlet
*/
@WebServlet("/FileUploadServlet")
public class FileUploadServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Map<String, Object> map=UploadUtils.UploadFile(request, "upload","utf-8",1024*1024*6,1024*1024*18);
System.out.println(map);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,
IOException {
doGet(request, response);
}
}
接下来,下一篇博客将会记录不使用jar包中的方法实现文件文件上传的功能。