java文件上传

package Demo_1;


import java.io.IOException;
import java.io.InputStream;
import java.util.List;


import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;


public class doFile extends HttpServlet {


	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 
		doPost(request, response);
	}


	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
     
		request.setCharacterEncoding("utf-8");
		
		FileItemFactory factory = new DiskFileItemFactory();
		
		ServletFileUpload upload = new ServletFileUpload(factory);
		
		if(upload.isMultipartContent(request)){
			//普通表单处理
			try {
				List<FileItem> list = upload.parseRequest(request);
				
				for(FileItem item : list){
					if(item.isFormField()){
						String filedName = item.getFieldName();//文本框民称   jsp页面中name中的值
						String content = item.getString();//文本框值  
						System.out.println(filedName+"1");
						System.out.println(content+"2");
					}else{
						String filedName = item.getFieldName();//文本框民称  jsp页面中name中的值
						String type = item.getContentType();//文件类型
						String content = item.getString();//文本内容
						String name = item.getName();//文件名
						InputStream in = item.getInputStream();//文件流
						System.out.println(filedName+"3");
						System.out.println(type+"4");
						System.out.println(content+"5");
						System.out.println(name+"6");
						System.out.println(in+"7");
					}
				}
			} catch (FileUploadException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
		}else{
			System.out.println("不是表单,不处理");
		}


	}


}





jsp界面



<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>




<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
	<meta charset="utf-8" />
  </head>
  
  <body>
    <form action="${pageContext.request.contextPath}/doFile" method="post" enctype="multipart/form-data">
                   姓名:<input type = "text" name = "userName"/>
                   <br/>
                   文件:<input type = "file" name = "file1"   />
                      <br/>
         <input type = "submit" value = "提交" />
    </form>
  </body>
</html>


猜你喜欢

转载自blog.csdn.net/erchouchou/article/details/80620078