码迷,mamicode.com
首页 > 编程语言 > 详细

Java中的文件上传和下载

时间:2017-05-25 01:20:54      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:二进制流   www   附件文件   java   for   size   对象   value   type   

文件上传原理:

  早期的文件上传机制:

    在TCP/IP中。最早出现的文件上传机制是FTP。他是将文件由客户端发送到服务器的标准机制。

  jsp中的文件上传机制:

    在jsp编程中不能使用FTP的方法来上传文件,这是由jsp运行机制所决定的。jsp中通过将表单元素设置Method="post" enctype="multipart/form-data" 属性,让表单以二进制编码的方式提交,在接收次请求的Servelet中用二进制流来获取内容,从而实现文件的上传。

    表单的enctype属性:

      application/x-www-form-urlencoded:默认编码方式,它只处理表单域里的value属性值,采用这种编码方式的表单会将表单域的值处理成URL编码的方式。

      multipart/form-data:这种编码方式的表单会以二进制流的方式来处理表单数据,这种编码方式会把文件域制定文件的内容也封装到请求参数里。

      text/plain:这种方式主要适用于直接通过表单发送邮件的方式。

文件下载原理:

  setp1:通过HttpServletResponse.setContentType()方法设置Content-Type头字段的值,来设置MIME类型,告诉浏览器应该使用那种方式来响应我们的返回的信息,例如设置为:"application/octet-stream" 或 "application/x-msdownload"等。

  step2:通过HttpServletResponse.setHeader()方法设置Content-Disposition头的值为 "attachment;filename= 文件名"。

  step3:读取下载文件,调用HttpServletResponse.getOutputStream()方法返回的ServletOutputStream对象来向客户端写入附件文件内容。

 

  

Java中的文件上传和下载

标签:二进制流   www   附件文件   java   for   size   对象   value   type   

原文地址:http://www.cnblogs.com/LionheartCGJ/p/6901718.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!