介绍
这篇文章将为大家详细讲解有关Java如何实现上传文件图片到指定服务器目录,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
具体代码如下所示:
* * * * * * web . xml & lt; ? xml version=?.0“,编码=癠TF-8" ?比; & lt; web-app  xmlns: xsi=癶ttp://www.w3.org/2001/XMLSchema-instance", xmlns=癶ttp://java.sun.com/xml/ns/javaee", xmlns: web=癶ttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd", xsi: schemaLocation=? http://java.sun.com/xml/ns/javaee , http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd", id=癢ebApp_ID", version=?.5“比; ,& lt; servlet> ,& lt; servlet-name> fileUpload ,& lt; servlet-class> cn.com.action.FileUpload ,& lt;/servlet> ,& lt; servlet-mapping> ,& lt; servlet-name> fileUpload ,& lt; url-pattern>/fileUpload ,& lt;/servlet-mapping> & lt;/web-app>
package cn.com.action; import java.io.File; import . io . *; import java.io.IOException; import 并不知道; 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.FileUploadException; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload;/* * *大敌; ,* @author 管理员 ,*文件上传 ,*具体步骤: ,* 1)获得磁盘文件条目工厂,DiskFileItemFactory 要导包 ,* 2),利用,request 获取,真实路径,,供临时文件存储,和,最终文件存储,,这两个存储位置可不同,也可相同 *大敌;3)对,DiskFileItemFactory 对象设置一些,属性 ,* 4)高水平的API文件上传处理,ServletFileUpload upload =, new ServletFileUpload(工厂); ,*目的是调用,parseRequest(请求)方法,获得,FileItem 集合list , *大敌; ,* 5)在,FileItem 对象中,获取信息,,遍历,,判断,表单提交过来的信息,是否是,普通文本信息,另做处理 ,* 6) ,*第一种只用第三方,提供的,item.write (, new 文件(路径,文件名),),,直接写到磁盘上 ,*第二种只手动处理, ,* ,*/public class  FileUpload extends HttpServlet  { ,public void  doGet (HttpServletRequest 请求,,HttpServletResponse 响应) throws 才能;ServletException, IOException { ,request.setCharacterEncoding (“utf-8");,//设置编码 ,//获得磁盘文件条目工厂 ,DiskFileItemFactory factory =, new DiskFileItemFactory (); ,//获取文件需要上传到的路径 ,String path =, request.getRealPath (“/upload1");//,String path =,“c:/upload1"; ,//如果没以下两行设置的话,上传大的,文件,会占用,很多内存, ,//设置暂时存放的,存储室,,,这个存储室,可以和,最终存储文件,的目录不同/* * *,才能原理,它是先存到,暂时存储室,然后在真正写到,对应目录的硬盘上,, *,才能按理来说,当上传一个文件时,其实是上传了两份,第一个是以,.tem 格式的, *才能,然后再将其真正写到,对应目录的硬盘上 ,*/,factory.setRepository (new 文件(路径)); ,//设置,缓存的大小,当上传文件的容量超过该缓存时,直接放到,暂时存储室 ,factory.setSizeThreshold (1024 * 1024),; ,//高水平的API文件上传处理 ,ServletFileUpload upload =, new ServletFileUpload(工厂); ,try {//可才能以上传多个文件 List<才能;FileItem>, list =, (ListJava如何实现上传文件图片到指定服务器目录