java上传文件的几种方式,java实现文件上传的三种方式

  java上传文件的几种方式,java实现文件上传的三种方式

  写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用

  在java里面文件上传的方式很多,最简单的依然是FileInputStream、FileOutputStream了,在这里我列举3种常见的文件上传方法代码

  首先呢,使用学习笔记一原生上传文件方法,需要一些简单的配置,不多说,上图。 (推荐学习:java课程)

  1.采用spring提供的上传文件的方法

  @RequestMapping(springUpload )

  公共字符串spring上传(http servlet请求请求)抛出IllegalStateException

  {

  长启动时间=系统。当前时间毫秒();

  //将当前上下文初始化给CommonsMutipartResolver(多部分解析器)

  CommonsMultipartResolver multipart resolver=new CommonsMultipartResolver(

  request.getSession().getServletContext());

  //检查形式中是否有enctype=multipart/form-data

  if(多部分解析器。是多部分(请求))

  {

  //将请求变成多部分请求

  multiparthttpservlet请求multi request=(multiparthttpservlet请求)请求;

  //获取多请求中所有的文件名

  迭代器ITER=多请求。获取文件名();

  while(iter.hasNext())

  {

  //一次遍历所有文件

  多部分文件file=多请求。getfile(ITER。下一个().toString());

  如果(文件!=空)

  {

  string path= E:/spring upload 文件。getoriginalfilename();

  //上传

  file.transferTo(新文件(路径));

  }

  }

  }

  结束时间长=系统。当前时间毫秒();

  System.out.println(Spring方法的运行时间:字符串。(结束时间-开始时间)“毫秒”的值;

  返回"/成功";

  }2.采用file.Transto 来保存上传的文件,这是目前我认为最好的上传方式,也是我最喜欢的上传方式,代码简单,速度快。请看下面代码。

  /*

  * 采用文件100 . Transto来保存上传的文件

  */

  @RequestMapping(fileUpload2 )

  公共字符串文件上传2(@ request param( file )CommonsMultipartFile文件)引发IOException {

  长启动时间=系统。当前时间毫秒();

  系统。出去。println( fileName: file。getoriginalfilename());

  String path=E:/ new Date().getTime()文件。getoriginalfilename();

  文件新文件=新文件(路径);

  //通过CommonsMultipartFile的方法直接写文件(注意这个时候)

  文件。转移到(新文件);

  结束时间长=系统。当前时间毫秒();

  System.out.println(采用文件100 . Transto的运行时间:字符串。(结束时间-开始时间)“毫秒”的值;

  返回"/成功";

  }3.第三种采用流的方式上传,这种方法在新手学习的时候经常用到,但是我并不喜欢,因为它又慢又难写,请看

  @RequestMapping(fileUpload )

  公共字符串文件上传(@ request param( file )CommonsMultipartFile文件)引发IOException {

  //用来检测程序运行时间

  长启动时间=系统。当前时间毫秒();

  系统。出去。println( fileName: file。getoriginalfilename());

  尝试{

  //获取输出流

  输出流OS=新文件输出流( E:/ new Date().getTime()文件。getoriginalfilename());

  //获取输入流CommonsMultipartFile中可以直接得到文件的流

  InputStream是=文件。getinputstream();

  字节[] bts=新字节[1024];

  //一个一个字节的读取并写入

  while(is.read(bts)!=-1)

  {

  OS。写(BTS);

  }

  OS。flush();

  OS。close();

  是。close();

  } catch(找不到文件异常e){

  //TODO自动生成的捕捉块

  e。printstacktrace();

  }

  结束时间长=系统。当前时间毫秒();

  System.out.println(采用流上传的方式的运行时间:字符串。(结束时间-开始时间)“毫秒”的值;

  返回"/成功";

  }简单的文件上传页面

  以上就是爪哇岛中如何上传文件的详细内容,更多请关注我们其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: