现在的位置: 首页 > 综合 > 正文

Servlet实现上传

2018年07月13日 ⁄ 综合 ⁄ 共 2353字 ⁄ 字号 评论关闭

秒速赛车公式 www.l19l7.cn

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;

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.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

import java.io.File;


public class Test extends HttpServlet {

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

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doPostAndGet(request, response);
	}
	
	public void doPostAndGet(HttpServletRequest request, HttpServletResponse response)
	{
		boolean isMultipart= ServletFileUpload.isMultipartContent(request);
        if(isMultipart){
            //构造一个文件上传处理对象
            FileItemFactory factory = new DiskFileItemFactory();
            ServletFileUpload upload = new ServletFileUpload(factory);
            
            Iterator    items;
            try{
                //解析表单中提交的所有文件内容
                items=upload.parseRequest(request).iterator();
                while(items.hasNext()){
                    FileItem item = (FileItem) items.next();
                    if(!item.isFormField()){
                        //取出上传文件的文件名称
                        String name = item.getName();
                        //取得上传文件以后的存储路径
                        String fileName=name.substring(name.lastIndexOf('\\')+1,name.length());
                        //上传文件以后的存储路径
                        String path= request.getRealPath("file")+ File.pathSeparator + fileName;
                        
                        //上传文件
                        File uploadFile = new File(path);
                        item.write(uploadFile);
                    }
                }
            }catch(Exception e){
                e.printStackTrace();
            }
        }
	}
}

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
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>My JSP 'index.jsp' starting page</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>
    This is my JSP page. <br>
    <form action="Test" method="post" enctype ="multipart/form-data">
    	<input type="file" name="UpLoadFile">
    	<input type="submit">
    </form>
  </body>
</html>

抱歉!评论已关闭.

  • 马上背!十九大报告中的四个“新” 2019-02-16
  • 蒲县工商质监局非公党委举办2018元旦文艺会 2019-02-16
  • 人民网评:建设数字中国时不我待 2019-02-16
  • 618史上最壕“买家”现身 Google以 5.5亿美元投资京东 2019-02-15
  • 雍正官窑:朕就是这样的品味(图) 2019-02-15
  • 西安司法考试将试点机考 2019-02-15
  • 人民日报新媒体矩阵聚焦十九大 融媒报道"给你好看" 2019-02-14
  • 社会主义是过渡阶段,最终实现共产主义才是其目的。社会主义是在消灭私有制,建立公有制直至无私,实现共产主义。 2019-02-14
  • 四轮电动车销售火爆存安全隐患 专家:需建国家标准 2019-02-14
  • 看懂汽车三元催化器工作原理后还能当金子卖?难为非洲兄弟了! 2019-02-14
  • 周杰伦昆凌为儿子庆生 小小周帅气入镜 2019-02-13
  • 都以为机器人普及了,一切都不是问题了?机器人不需要不断升级?机器人生产啥?不需要人设计? 2019-02-13
  • 价值-热门标签-华商生活 2019-02-13
  • 上合组织引领发展 吉中合作稳步前行——访吉尔吉斯斯坦总统热恩别科夫 2019-02-13
  • 互联网金融协会提示:防范变相“现金贷”业务风险 2019-02-12
  • 772| 280| 600| 496| 224| 102| 68| 885| 166| 705|