java web文件上传路径_java web项目java后台获取前台js上传文件的路径

该博客展示了如何在Java Web项目中通过Servlet处理文件上传。代码示例使用了DiskFileItemFactory和ServletFileUpload组件,设置了大小限制,并将上传的文件保存到指定临时目录。博主分享了从请求中解析文件、获取文件名、生成保存路径以及保存文件的具体步骤。
摘要由CSDN通过智能技术生成

展开全部

如果通过servelet来读取上传文件路径,则代码如下,我已经在项目62616964757a686964616fe4b893e5b19e31333332643937中用过了:DiskFileItemFactory difif = new DiskFileItemFactory();

difif.setSizeThreshold(32*1024);difif.setRepository(new File(tmpDir));        //

用以上工厂实例化上传组件ServletFileUpload sfu = new ServletFileUpload(difif);

sfu.setSizeMax(MAX_SIZE);

List fileList = sfu.parseRequest(request);

if ( fileList == null || fileList.size() == 0) {                throw new Exception("

导入文件不存在,请检

查");} else {                File upLoadFile = null;                Iterator fileIterator = fileList.iterator();

//得到所有上传的文

件                while (fileIterator.hasNext()) {                    FileItem fileItem = (FileItem)fileIterator.next();                    //

取得上传文件

名                    if (fileItem.getContentType() == null) {                    } else {

//

此为路

径                        String path = fileItem.getName();                        String t_ext = path.substring(path.lastIndexOf(".") + 1);                                                //

根据系统时间生成上传后保存的文件

名                        String prefix = String.valueOf(System.currentTimeMillis());                        //

保存最终的文件完整路径,保存在工程根目录下的Upload目录

下                        String u_name = tmpDir + File.separator + prefix + "." + t_ext;                                                //

开始保存文

件                        upLoadFile = new File(u_name);                        fileItem.write(upLoadFile);                    }                }            }

简单的利用javajs实现文件上传 package com.fendou.myString; import java.io.File; 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; public class FileUpload extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { boolean a=ServletFileUpload.isMultipartContent(request); if(a){ 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.pathSeparatorChar+fileName; File uploadFile=new File (path); request.getSession ().setAttribute("file", uploadFile); item.write(uploadFile); response.setContentType ("text/html"); response.setCharacterEncoding("utf-8"); PrintWriter out=response.getWriter(); // out.print("<font size='2'> 上传的文件为:"+name+"<br>"); // out.print("保存在服务器上 的地址为:"+path+"</font>"); } } }catch(Exception e){ e.printStackTrace(); } } response.sendRedirect("smartupload.jsp"); } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值