文件的上传

upload.jsp文件

<%@ 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 'upload.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>
   <form action="/Upload/UploadServlet" enctype="multipart/form-data" method="post">
    上传用户:<input type="text" name="name"/><br>
    上传文件1:<input type="file" name="file1"/><br/>
    上传文件2:<input type="file" name="file2"/><br/>
    <input type="submit" value="上传文件"/>"
   </form>
   
   
  </body>
</html>

 

 

 

UploadServlet.java文件

package www.csdn.com.Servlet;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream;
import java.util.List;
import java.util.UUID;


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

public class UploadServlet extends HttpServlet {

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  try
  {
   DiskFileItemFactory factory=new DiskFileItemFactory();
   ServletFileUpload upload=new ServletFileUpload(factory);
   List<FileItem> list=upload.parseRequest(request);
   for(FileItem item : list)
   {
    for(FileItem item1 : list)
    {
     if(item1.isFormField())
     {
      String inputName = item1.getFieldName();
      String inputValue = item1.getString("UTF-8");
      System.out.println(inputName+"="+inputValue);
      
     }else
     {
      String fileName = item1.getName();
      if(!fileName.equals(""))
      {
       fileName = fileName.substring(fileName.lastIndexOf("\\")+1);
       
       String saveName =this.generateFileName(fileName);
       
       InputStream in = item1.getInputStream();
       
       String  savePath = this.getServletContext().getRealPath("WEB-INF/upload");
       
       String savePaths = this.generateFilePath(savePath, fileName);
       FileOutputStream out = new FileOutputStream(savePaths+"\\"+saveName);
       byte[] buf = new byte[1024];
       int len=0;
       while((len=in.read(buf))>0)
       {
        out.write(buf,0,len);
       }
       
       in.close();
       out.close();
       item.delete();
      }
     }
     request.setAttribute("message","上传成功");
    }
   }
  }catch(Exception e)
  {
   e.printStackTrace();
   request.setAttribute("message","上传失败");
     
  }
  request.getRequestDispatcher("/message.jsp").forward(request, response);
 }
   
  public String generateFileName(String filename)
  {
   return UUID.randomUUID().toString()+"_"+filename;
  }
   
   
   
  public String generateFilePath(String path,String filename)
  {
   int dir1 =filename.hashCode()& 0xf;
   int dir2 =(filename.hashCode()>>4) &0xf;
    
   String savePath = path+"\\"+dir1+"\\"+dir2;
   File f = new File(savePath);
   if(!f.exists())
   {
    f.mkdirs();
   } 
   return savePath;
    
  }

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

    doGet(request, response);
  }
}

 

message.jsp文件

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>  
    <title>My JSP 'message.jsp' starting page</title>  
  </head>
 
  <body>
    ${message}
  </body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试点应用站用交流系统断

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值