java上传文件到servlet接口 5C

如何实现把文件流(或字节数组)从一个接口传到servlet接口,使用post方式提交,
文件流(或字节数组)有可能较大,在servlet中如何接收到文件流。在线急等

1

12个回答

搜下fileupload

0

使用文件上传接口;post字符串,tomcat会限制长度

0

直接使用post上传到服务器

0

//将request变成多部分request
MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
//获取multiRequest 中所有的文件名
Iterator iter = multiRequest.getFileNames();
while (iter.hasNext()) {
docFileId = docFileService.getDocumentId();
picId = docFileService.getFoodPictureId();
//一次遍历所有文件
MultipartFile file = multiRequest.getFile(iter.next().toString());

0
qq969068709
陌路渐远 不是spring框架,没法用MultipartHttpServletRequest
一年多之前 回复

使用文件上传接口;post字符串,tomcat会限制长度。直接使用post上传到服务器

0

1、重载 HttpServlet 中的 doPost 方法。
2、调用 request.getContentLength() 得到 Content-Length ,并定义一个与 Content-Length 大小相等的字节数组buffer。
3、从HttpServletRequest 的实例 request 中得到一个 InputStream, 并把它读入 buffer 中。
4、使用用 FileOutputStream 将 buffer 写入指定文件。

0

response.setContentType("application/文件类型");
response.setHeader("Content-Disposition","attachment; filename=\"文件名\"");
ServletOutputStream out = response.getOutputStream();
out.write(内容);

0

import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.sql.Connection;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
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.ProgressListener;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.io.FilenameUtils;

import com.taxi.Constant;
import com.taxi.jdbc.dao.HelpDao;
import com.taxi.jdbc.dao.base.UploadDao;
import com.taxi.jdbc.dao.bean.UpLoadBean;
import com.taxi.jdbc.dao.imp.UploadDaoImp;
import com.taxi.util.Commend;

/**

  • @author lolin
  •     资源上传
    

    */
    @WebServlet(name = "Upload", urlPatterns = "/Upload")
    public class ResourceUpload extends HttpServlet {

    private static final long serialVersionUID = 1L;

    protected void doGet(HttpServletRequest request,
    HttpServletResponse response) throws ServletException, IOException {
    response.reset();// 清空输出流
    response.setContentType("text/html");
    response.setCharacterEncoding(Commend.UTF8);
    System.out.println("开始上传");
    boolean isMultipart = ServletFileUpload.isMultipartContent(request);
    if (!isMultipart) {
    throw new RuntimeException("your form is not multipart/form-data");
    }
    Connection conn = null;
    try {
    conn = HelpDao.getInstance().getConnection();
    UploadDao uploadDB = new UploadDaoImp(conn);
    String root_path = "E:/resource";
    // 设置文件大小位置等等
    DiskFileItemFactory diskfactory = new DiskFileItemFactory();
    // 指定临时文件的存储目录
    // diskfactory.setRepository(new File("path"));
    // 核心类处理上传逻辑
    ServletFileUpload fileUpload = new ServletFileUpload(diskfactory);

        // 解决表单乱码
        fileUpload.setHeaderEncoding("utf-8");
        // 进度条
        fileUpload.setProgressListener(new ProgressListener() {
            @Override
            public void update(long pBytesRead, long pContentLength,
                    int pItems) {
    
                if (pContentLength == -1) {
                    System.out.println("文件错误");
                } else {
                    float percent = (float) (pBytesRead * 1.0
                            / pContentLength * 100);
                    int percents = (int) percent;
                    System.out.println("已完成: " + percents + "%");
                }
            }
        });
    
        // fileUpload.setFileSizeMax(1024*1024*3); //单个文件不能超过3M
        // fileUpload.setSizeMax(1024*1024*6);//总上传文件不能超过6M
    
        List<FileItem> listItem = fileUpload.parseRequest(request);
        StringBuffer uuid_sb = new StringBuffer();
        for (FileItem item : listItem) {
            if (item.isFormField()) {
                // 普通文本input
                processFormField(item);
            } else {
                // 文件上传
                if (item.getName() != null && !item.getName().equals("")) {
                    // 扩展名
                    String separator = FilenameUtils.getExtension(item.getName());
                    String directory = root_path + File.separator + separator;
                String absolutePath =   processFileUpload(item, directory);
                String uuid =uploadDB.insert(absolutePath,(int)item.getSize());
                uuid_sb.append(uuid);
                uuid_sb.append(",");
                } else {
                    System.out.println("没有提交文件");
                }
    
            }
        }
        String result =uuid_sb.toString().substring(0, uuid_sb.length()-1);
        response.getWriter().write(result);
    
    } catch (FileUploadException e) {
        e.printStackTrace();
        response.sendError(500);
    } catch (SQLException e1) {
        e1.printStackTrace();
        response.sendError(500);
    } catch (Exception e2){
        e2.printStackTrace();
        response.sendError(500);
    }finally {
        HelpDao.getInstance().closeConn(conn);
    }
    

    }

    // 普通input
    private void processFormField(FileItem item) {
    try {
    System.out.println("普通文件" + item.getFieldName() + " "
    + item.getString("utf-8"));
    } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
    }

    }

    // 上传文件
    private String processFileUpload(FileItem item, String path)
    throws Exception {
    String filename = item.getName();
    System.out.println("上传的文件名" + filename);
    if (filename != null) {
    filename = FilenameUtils.getName(filename);
    }
    // 解决重名问题
    filename = Constant.sdf.format(new Date()) + "_" + filename;

    File dirctoryFile = new File(path);
    
    // 按照日期进行打算存储目录
    File newFileDir = makeChildDirectory(dirctoryFile);
    
    if (!newFileDir.exists()) {
        newFileDir.mkdirs();
    }
    // 用文件名的hashCode计算打散的存储目录:二级目录
    // File newFileDir = makeChildDirctory(dirctoryFile,filename);
    File file = new File(newFileDir, filename);
    

// file.createNewFile();
item.write(file);
// 删除临时文件
item.delete();
return file.getAbsolutePath();
}

/**
 * 按照日期打散目录
 * 
 * @param storeDirectroy
 * @return
 */
private File makeChildDirectory(File storeDirectroy) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    String dateDir = sdf.format(new Date());
    File file = new File(storeDirectroy, dateDir);
    if (!file.exists()) {
        file.mkdirs();
    }
    return file;
}


protected void doPost(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException {
    doGet(request, response);
}

}

0
0

我的理解是,你要上传一个文件到对方给定的路径下,上传方法对方已经做好了,按照你说的是servlet方法,我接触过的是如果你要从一个系统的接口调用另一个系统的接口,这是属于系统间调用的问题。
可以采用的方法有很多,最直接的就是使用httpclient和webservice,或者jdk自带的rpc调用。

0
共12条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Java(Servlet)上传文件的demo
实现文件上传的小demo,下载下来直接import就能用
Java Servlet上传文件
NULL 博文链接:https://doujun1998.iteye.com/blog/1758563
java servlet上传文件
利用java servlet上传文件 word文档
JAVA 上传文件的servlet
JAVA 上传文件的servlet,写一个main方法可以直接使用,参数为上传文件的服务器位置,可以为本地
Java文件上传servlet接口
一个简单的Java文件上传servlet接口,文件上传成功后返回json格式响应数据,app可以调用此接口上传图片等文件到服务器,获取资源网络路径url
求助,java servlet 上传文件错误。。。。
java中,使用servlet上传文件没有反应,但控制台输出“上传成功”,求大神相助,代码如下。。。不想用控件上传。。。rnjsp代码如下:rn[code=Java] rn 图片:rn rn [/code]rnservlet中:rn[code=Java]rnpublic void doPost(HttpServletRequest request, HttpServletResponse response)rn throws ServletException, IOException rn response.setContentType("text/html");rn request.setCharacterEncoding("UTF-8");rn response.setCharacterEncoding("UTF-8");rn rn DiskFileUpload du = new DiskFileUpload();rn du.setSizeMax(4194304); // 设置最大文件尺寸,这里是4MBrn du.setSizeThreshold(4096);// 设置缓存区大小 ,4 kb;rn // up 为 /WebRoot 下的 一个目录rn du.setRepositoryPath(request.getSession().getServletContext().getRealPath("/up"));// 设置缓存目录rn // 得到所有文件rn try rn List list = du.parseRequest(request);rn Iterator it = list.iterator();rn while (it.hasNext()) rn FileItem fileItem = (FileItem) it.next();rn String fileName = fileItem.getName();rn int index = fileName.lastIndexOf('.');rn fileName = fileName.substring(index);rn fileItem.write(new File(request.getSession()rn .getServletContext().getRealPath("/file")+ "/" + fileName));rn System.out.println("上传成功");rn rn catch (Exception e) rn e.printStackTrace();rn rn PrintWriter out = response.getWriter();rn out.flush();rn out.close();rn rnrn[/code]
Java servlet上传文件(照片视频)
使用SmartUpload类上传 ============================================= package com.suneasy.appaction;import java.io.File; import java.io.IOException; import java.sql.SQLException;import javax.servlet.Ser
servlet上传文件
使用第三库cos完成上传的例子,简单实用,图片上传立即显示
servlet的上传文件
1.servlet部分 public class usephotoServlet extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setChar
Servlet上传文件
准备工作:要到http://commons.apache.org/fileupload/download_fileupload.cgi下载上传文件需要的组件类库并且到 http://commons.apache.org/io/download_io.cgi上下载其IO组件,再有了这两个组件之后我们就可以编写一个上传的Servlet程序了。 1.建立一个jsp文件里面有文件域,能够提交给要处理数...
Servlet 上传文件
更改form的enctype属性enctype属性默认是application/x-www-form-urlencoded,发送文件时需要更改为multipart/form-data 发送一个图片时的http请求如下: POST /File/Photo HTTP/1.1 Accept: text/html, application/xhtml+xml, */* X-HttpWatch-RID
servlet 上传文件
我想通过servlet接受输入流,并放到mysql数据库中。先不要说用组件什么的了。rn**************************************************rnform表单:rnrnrn rnrnrnrnrnrnrn**************************************************rnservlet:rnrnpackage upload_file;rnimport javax.servlet.*;rnimport javax.servlet.http.*;rnimport java.io.*;rnimport java.sql.*;rnpublic class up_file extends HttpServletrnrn public void doPost(HttpServletRequest request,HttpServletResponse response)rn throws IOException,ServletExceptionrn rn rn tryrn Class.forName("com.mysql.jdbc.Driver");rn rn catch(ClassNotFoundException err_1)rn PrintWriter out=response.getWriter();rn out.print("err1"+err_1); rn rn tryrn Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/test_search","****","******");rn Statement stmt=conn.createStatement();rn [color=#FF0000]InputStream is=request.getInputStream();[/color]rn String sql_1="insert into big_data(t_data)Values("+is+")";rn stmt.execute(sql_1);rn stmt.close();rn conn.close();rn rn catch(SQLException err_2)rn rn PrintWriter out=response.getWriter();rn out.print("err2"+err_2); rn rn rn public void doGet(HttpServletRequest request1,HttpServletResponse response1)rn throws IOException,ServletExceptionrn rn PrintWriter out=response1.getWriter();rn out.print("use post");rn rnrn*********************************************************rnrn我觉得应该是在getInputSream()这里出错了。数据库的字段没有问题。rn听说这样的输入流不是“干净”的,还要选出来过.......rn麻烦这方面也解释一下。rnrn[color=#FF0000]报的错是:[/color]rn是插入出问题了 err2com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.connector.CoyoteInputStream@888e6c)' at line 1
servlet 上传文件
原文:http://zhidao.baidu.com/question/263826186.html   public String uploadFile(HttpServletRequest request){ try { DiskFileItemFactory factory= new DiskFileItemFactory(); ServletFi...
Java 上传文件接口 示列
public class UploadServlet extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest request, HttpSe...
postman测试java接口上传文件
打开postman,在网址栏写入自己上传文件的网址,也就是你有上传功能的java文件运行后出来的网址。 如图  ,然后选择body加入如图的键值对。点击send便成功了。 如果你报错 则说明你该目录下没有upload文件夹(这个upload指的是上图后面那一个),然后去该项目下的WebContent下新建一个叫upload的文件夹即可。   注:图中的Key要对应你接口中的名...
使用java接口上传文件到HDFS
使用java接口上传文件到HDFS
jsp与servlet 上传文件 javaBean上传文件
jsp与servlet文件上传代码,可以上传中文文件名,不乱码 jsp与javaBean文件上传代码,但上传中文文件名乱码 刚写完的。
微信测试接口Servlet,java
微信公众平台测试号开发,javaweb,serlvet开发
java Servlet接口作用域生命周期
Servlet接口作用域有三种:request、session、application 这些作用域的使用可以让我们传递数据和存储数据,在使用作用域传递数据的时候,必须掌握作用域对应的周期和作用范围。 通过eclipse里边代码的展示体现作用域的生命周期: LoginServlet.java request.setAttribute(&amp;amp;quot;name&amp;amp;quot;, &amp;amp;quot;111&amp;amp;quot;);//request设...
servlet接口
Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。
Java:Servlet使用AJAX异步上传文件
没有中文乱码问题。 1. 客户端使用HTML + JavaScript(AJAX) Upload Demo $(function() { // 创建AJAX方式上传文件 var $uploadBtn = $(&quot;#uploadBtn&quot;); new ...
java httpclient 上传文件 服务器 servlet 接收
java httpclient 上传文件 服务器 servlet 接收
Java for Web学习笔记(九):Servlet(7)上传文件
上传文件 Servlet的参数设置 采用annotation方式如下: @WebServlet( name = "TicketServlet", urlPatterns = {"/tickets"}, loadOnStartup = 1 ) /* MultipartConfig配置了本Servlet的文件上传参数, * location:这里没有列出的是location参数,表示存
java servlet上传文件 项目中用的.绝对能用
上载文件.轻松搞定.java Servlet上传文件.
servlet上传文件demo
自己写的servlet上传文件demo,有注释方便学习。 包含commons-io 和 commons-fileupload 架包 jdk大于等于1.6可直接用,如果jdk版本小于1.6请换一个低版本io的架包即可
ftp、servlet上传文件
使用Java编程,两种方式ftp servlet上传文件
CKEditor 上传文件(Servlet实现)
使用CKEditor3.6.0版本,使用上传组件实现Servlet上传图片,含有列子
【转载】servlet 上传文件
commons-io下载地址:http://commons.apache.org/io/download_io.cgicommon-fileupload组件是apache的一个开源项目之一,可以从http://jakarta.apache.org/commons/fileupload/下载。该组件简单易用,可实现一次上传一个或多个文件,并可限制文件大小。下载后解压zip包,将commons-f...
servlet上传文件无法解析 pageContext
index.htmrnrnrnrn 文件上传rn rnrnrnrn rn  文件名称: rn  rn rn 上传路径:rn  rn rn  附加内容:rn  rn rn  rn rn rn rnrnrnrnrnrnFileup.java*******************************************************rnpackage judge;rnimport java.io.IOException;rnimport java.io.PrintWriter;import javax.servlet.ServletConfig;rnimport javax.servlet.ServletException;rnimport javax.servlet.http.HttpServlet;rnimport javax.servlet.http.HttpServletRequest;rnimport javax.servlet.http.HttpServletResponse;rnimport javax.servlet.jsp.*;rnrnimport com.jspsmart.upload.*;rnrnpublic class Fileup extends HttpServlet rn private ServletConfig config;rn public void doPost(HttpServletRequest request, HttpServletResponse response)rn throws ServletException, IOException rn response.setContentType("text/html;charset=gb2312");rn PrintWriter out = response.getWriter();rn SmartUpload su= new SmartUpload();rn su.initialize(config,request,response);rn int count=0;rn SmartUpload mySmartUpload = new SmartUpload();rn try rn mySmartUpload.initialize(config,request,response);rn mySmartUpload.upload();rn com.jspsmart.upload.File f1 = mySmartUpload.getFiles().getFile(0);rn String name = f1.getFileName(); rn count = mySmartUpload.save(mySmartUpload.getRequest().getParameter("PATH"));rn //other为form表单提交过来的rn String other=mySmartUpload.getRequest().getParameter("other"); //这里可以对other进行处理rn //request.getParameter("PATH");request.gerParameter("other");rn rn // 显示处理结果rn out.println(count + " file uploaded.");rnrn catch (Exception e)rn out.println("Unable to upload the file. ");rn out.println("Error : " + e.toString());rn rn rn out.println("");rn out.println("");rn rn rnrn rn rnrn错误内容****************************rn严重: Servlet.service() for servlet Fileup threw exceptionrnjava.lang.Error: 无法解析的编译问题:rn 无法解析 pageContextrnrn at judge.Fileup.doPost(Fileup.java:25)rn at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)rn at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)rn at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)rn at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)rn at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)rn at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)rn at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)rn at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)rn at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)rn at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)rn at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:857)rn at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:565)rn at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)rn at java.lang.Thread.run(Thread.java:619)
利用Servlet上传文件
package com.demo; import java.io.*; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.Ht...
Servlet 上传文件(转)
这里只使用Servlet,先用apache fileupload包将EXCEL文件流上传到服务器,然后服务器端读取EXCEL JSP页面: &amp;lt;form action=&quot;ImportExcelToDatabase?action=1&quot; enctype=&quot;multipart/form-data&quot; method=&quot;post&quot;&amp;gt;&amp;lt;input type=&quot;file&quot; name=&quot;exc
servlet上传文件到服务器
需求这样:用户将“员工信息文件”上传到服务端事前约定的某一目录下(不需要通过页面上传文件)rn这个功能思路是怎样的,是不是就是将客户端的某个文件(txt)上传到web服务器下的根目录?rn在页面上是通过输入文件名,点启动添加到servletrn[code=java]rn File file=new File("E:\\MyTestCode\\addEmployee.txt");//客户端路径rn if(!file.exists())rn file.mkdir();rn rn FileInputStream fis=new FileInputStream(file);rn BufferedReader read=new BufferedReader(new InputStreamReader(fis));rn String lineTxt=read.readLine();rn File f=new File("test.txt");//服务器目录rn BufferedWriter write=new BufferedWriter(new FileWriter(f));rn write.write(lineTxt);rn write.flush();rn[/code]rn为什么我客户端的这个文件访问不了,是不是代码的问题rn[code=java]rnjava.io.FileNotFoundException:E:\MyTestCode\addEmployee.txt (拒绝访问。)rn[/code]rn另外再问下自定义生成服务器根目录可不可以像我这样写rn
jsp servlet 上传文件
直接servletrnrnimport java.io.File;rnimport java.io.IOException;rnimport java.util.List;rnrnimport javax.servlet.ServletException;rnimport javax.servlet.http.HttpServlet;rnimport javax.servlet.http.HttpServletRequest;rnimport javax.servlet.http.HttpServletResponse;rnrnimport org.apache.commons.fileupload.FileItem;rnimport org.apache.commons.fileupload.FileUploadException;rnimport org.apache.commons.fileupload.FileUploadBase.FileSizeLimitExceededException;rnimport org.apache.commons.fileupload.disk.DiskFileItemFactory;rnimport org.apache.commons.fileupload.servlet.ServletFileUpload;rnrnpublic class FileUploadServlet extends HttpServlet rnrn private static final long serialVersionUID = 2827297299439162553L;rnrn public void doGet(HttpServletRequest request, HttpServletResponse response)rn throws ServletException, IOException rn //使用同一种处理方法rn doPost(request, response);rn rnrn public void doPost(HttpServletRequest request, HttpServletResponse response)rn throws ServletException, IOException rn request.setCharacterEncoding("UTF-8");rn response.setContentType("text/html; charset=UTF-8");rnrn //保存路径rn String savePath = getServletContext().getRealPath("/upload");rn File saveDir = new File(savePath);rn // 如果目录不存在,就创建目录rn if(!saveDir.exists())rn saveDir.mkdir();rn rnrn // 创建文件上传核心类rn DiskFileItemFactory factory = new DiskFileItemFactory();rn ServletFileUpload sfu = new ServletFileUpload(factory);rn //设置编码rn sfu.setHeaderEncoding("UTF-8");rn // 设置上传的单个文件的最大字节数为2Mrn sfu.setFileSizeMax(1024*1024*2);rn //设置整个表单的最大字节数为10Mrn sfu.setSizeMax(1024*1024*10);rnrn tryrn // 处理表单请求rn List itemList = sfu.parseRequest(request);rn for (FileItem fileItem : itemList) rn // 对应表单中的控件的namern String fieldName = fileItem.getFieldName();rn System.out.println("控件名称:" + fieldName);rn // 如果是普通表单控件rn if(fileItem.isFormField())rn String value = fileItem.getString();rn //重新编码,解决乱码rn value = new String(value.getBytes("ISO-8859-1"),"UTF-8");rn System.out.println("普通内容:" + fieldName + "=" + value);rn // 上传文件rn elsern // 获得文件大小rn Long size = fileItem.getSize();rn // 获得文件名rn String fileName = fileItem.getName();rn System.out.println("文件名:"+fileName+"\t大小:" + size + "byte");rnrn //设置不允许上传的文件格式rn if(fileName.endsWith(".exe"))rn request.setAttribute("msg", "不允许上传的类型!");rn elsern //将文件保存到指定的路径rn File file = new File(savePath,fileName);rn fileItem.write(file);rn request.setAttribute("msg", "上传成功!");rn rn rn rn catch(FileSizeLimitExceededException e)rn request.setAttribute("msg", "文件太大");rn catch(FileUploadException e)rn e.printStackTrace();rn catch(Exception e)rn e.printStackTrace();rn rn //上传完毕后 转发到首页rn request.getRequestDispatcher("/index.jsp").forward(request, response);rn rnrnrnrnrn错误信息:rn五月 10, 2015 11:07:44 上午 org.apache.catalina.core.StandardWrapperValve invokern严重: Servlet.service() for servlet [fileupload] in context with path [] threw exception [Servlet execution threw an exception] with root causernjava.lang.ClassNotFoundException: javax.servlet.ServletInputStreamrn at java.net.URLClassLoader$1.run(URLClassLoader.java:366)rn at java.net.URLClassLoader$1.run(URLClassLoader.java:355)rn at java.security.AccessController.doPrivileged(Native Method)rn at java.net.URLClassLoader.findClass(URLClassLoader.java:354)rn at java.lang.ClassLoader.loadClass(ClassLoader.java:425)rn at java.lang.ClassLoader.loadClass(ClassLoader.java:358)rn at org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(ServletFileUpload.java:115)rn at servlet.FileUploadServlet.doPost(FileUploadServlet.java:56)rn at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)rn at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)rn at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)rn at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)rn at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)rn at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)rn at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)rn at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)rn at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)rn at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)rn at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)rn at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)rn at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)rn at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)rn at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)rn at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)rn at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)rn at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)rn at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)rn at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)rn at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2462)rn at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2451)rn at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)rn at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)rn at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)rn at java.lang.Thread.run(Thread.java:745)rnrnrn不管用什么方法 都是这一句报错rn List itemList = sfu.parseRequest(request);
servlet上传文件详细解析
servlet上传文件详细解析 大家好好看
Servlet上传文件服务器端代码
/** * * @author Administrator * 文件上传 * 具体步骤: * 1)获得磁盘文件条目工厂 DiskFileItemFactory 要导包 * 2) 利用 request 获取 真实路径 ,供临时文件存储,和 最终文件存储 ,这两个存储位置可不同,也可相同 * 3)对 DiskFileItemFactory 对象设置一些 ...
servlet实现的上传文件实例
servlet实现的上传文件实例
Servlet上传文件的实现
浏览器会如何上传一个文件? 注意最下面那一栏,那就是这次post的实体部分,这个实体中包含着文件内容,chrome这里隐藏了文件内容,我实际传了一个内容是”123“的文本文件,完整实体部分是下面这样子:注意第一幅图中的Content-Type属性,中间有一个”boundary“,boundary意思是”边界,界限“。其实是浏览器随机生成的一串字符串,用来界定真正文件的范围的,当我们把实体部分接收到
servlet上传文件(后)
NULL 博文链接:https://hnzhoujunmei.iteye.com/blog/780985
servlet接受上传文件
1、前端代码 &lt;%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%&gt; &lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/...
jsp servlet上传文件
                                     jsp+servlet上传文件到本地磁盘 当我们开发网站做用户注册登陆的时候会把用户的各种信息存到数据库里。当然可能会包括一些图片的信息。我们怎 么存储用户的图片信息呢?有两种方案。 1:把用户的图片信息变成二进制图片,然后在数据库里以blob的字段类型来记录用户的信息。 2:把用户的图片保存在我们本地磁盘,在数据库...