博客
关于我
JAVAEWEB实现文件的上传案例
阅读量:300 次
发布时间:2019-03-03

本文共 2759 字,大约阅读时间需要 9 分钟。

Servlet页面

package com.demo;import java.io.File;import java.io.IOException;import java.io.PrintWriter;import java.util.UUID;import javax.servlet.ServletException;import javax.servlet.annotation.MultipartConfig;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.Part;@WebServlet("/fileUpload.do")@MultipartConfig(location="D:\\",fileSizeThreshold=1024)public class FileUploadServlet extends HttpServlet {   	private static final long serialVersionUID = 1L;	private String getFilename(Part part)	{   		String fname=null;		String header=part.getHeader("content-disposition");		fname=header.substring(header.lastIndexOf("=")+2,header.length()-1);		fname=fname.substring(fname.lastIndexOf("\\")+1);		fname=UUID.randomUUID()+"_"+fname;		return fname;	}	private String getFilename1(Part part)	{   		String fname=null;		String header=part.getHeader("content-disposition");		fname=header.substring(header.lastIndexOf("=")+2,header.length()-1);		fname=fname.substring(fname.lastIndexOf("\\")+1);		return fname;	}	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {   		response.getWriter().append("Served at: ").append(request.getContextPath());	}	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {   		request.setCharacterEncoding("UTF-8");		response.setContentType("text/html;charset=utf-8");		String path =this.getServletContext().getRealPath("/");		String mnumber=request.getParameter("mnumber");		Part p=request.getPart("fileName");		Part p1=request.getPart("fileName1");		Part p2=request.getPart("fileName2");		String message="";		if(p.getSize()>1024*1024||p1.getSize()>1024*1024||p2.getSize()>1024*1024)		{   			p.delete();			p1.delete();			p2.delete();			message="文件太大,不能上传";		}else		{   			path=path+"\\member\\"+mnumber;			File f=new File(path);			if(!f.exists()) {   				f.mkdirs();		}		PrintWriter out =response.getWriter();		String fname=getFilename(p);		String fname1=getFilename(p1);		String fname2=getFilename(p2);		p1.write(path+"\\"+fname1);		p.write(path+"\\"+fname);		p2.write(path+"\\"+fname2);		message="文件上传成功!";		String fnamex2=getFilename1(p);		String fnamex1=getFilename1(p);		String fnamex=getFilename1(p);		out.print(fnamex+message+"
"); out.print(fnamex1+message+"
"); out.print(fnamex2+message+"
"); } }}

JSP页面

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%>
上传文件${ message }
上传文件
文件名称1:
文件名称2:
文件名称3:

转载地址:http://ssqm.baihongyu.com/

你可能感兴趣的文章
Vue 生命周期和钩子函数
查看>>
C#l零基础学习传智播客(8)P43-P46基础班第四天,while循环的练习,dowhile循环的讲解,以及练习
查看>>
求n内的素数,并打印出来(c语言)
查看>>
[电影]《Ladybird》演绎完整18岁的青春
查看>>
[转]如何搭建基于Hexo的独立博客
查看>>
妈,今天清明
查看>>
树莓派博通BCM2835芯片的IO口驱动代码调试和测试
查看>>
MySQL复习基础语句
查看>>
npm问题汇总
查看>>
金融信息安全之漏洞利用与安全加固
查看>>
Vue快速入门学习笔记(更新ing)
查看>>
js中[]、{}、()的区别
查看>>
js-禁止右键菜单代码、禁止复制粘贴代码
查看>>
style标签放在body前和body后的区别
查看>>
记一次vue项目启动失败
查看>>
Linux命令-nmap
查看>>
关于mysql卸载问题
查看>>
血色先锋队
查看>>
21年寒假第一周周练/HDU1176:免费馅饼
查看>>
数据结构——最小支撑树
查看>>