HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

My JSP 'index.jsp' starting page

method="POST" enctype="multipart/form-data">

value="上传">

新建Upload1Servlet  路径:/upload1

[java] view plain copy

package cn.itcast.web.servlet;

import java.io.IOException;

import java.io.InputStream;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class Upload1Servlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

// System.out.println("upload1 servlet......");

// 通过request获取一个字节输入流,将所有的请求正文信息读取到,打印到控制台

InputStream is = request.getInputStream();

byte[] b = new byte[1024];

int len = -1;

while ((len = is.read(b)) != -1) {

System.out.println(new String(b, 0, len));

}

is.close();

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doGet(request, response);

}

}

在浏览器端访问信息如下:

后台打印正文信息如下:

文件上传概述

实现web开发中的文件上传功能,需要完成如下二步操作:

在web页面中添加上传输入项。

在Servlet中读取上传文件的数据,并保存在服务器硬盘中。

如何在web页面中添加上传输入项?

标签用于在web页面中添加文件上传输入项,设置文件上传输入项时注意:

1、必须设置input输入项的name属性,否则浏览器将不会发送上传文件的数据。

2、必须把form的encType属性设为multipart/form-data 设置该值后,浏览器在上传文件时,并把文件数据附带在http请求消息体内,并使用MIME协议对上传的文件进行描述,以方便接收方对上传数据进行解析和处理。

3、表单的提交方式要设置为post。

如何在Servlet中读取文件上传数据,并保存到本地硬盘中?

Request对象提供了一个getInputStream方法,通过这个方法可以读取到客户端提交过来的数据。但由于用户可能会同时上传多个文件,在servlet端编程直接读取上传数据,并分别解析出相应的文件数据是一项非常麻烦的工作,示例。

为方便用户处理文件上传数据,Apache 开源组织提供了一个用来处理表单文件上传的一个开源组件( Commons-fileupload ),该组件性能优异,并且其API使用极其简单,可以让开发人员轻松实现web文件上传功能,因此在web开发中实现文件上传功能,通常使用Commons-fileupload组件实现。

使用Commons-fileupload组件实现文件上传,需要导入该组件相应支撑jar包:Commons-fileupload和commons-io。commo-io不属于文件上传组件的开发jar文件,但Commons-fileupload组件从1.1版本开始,它工作时需要commons-io包的支持。

java web上传视频文件_怎样使用javaweb实现上传视频和下载功能?相关推荐

  1. java 批量上传pdf文件_使用fileinput插件批量上传文件

    使用fileinput插件批量上传文件 前言 最近在做项目的时候涉及文件批量上传,使用bootstrap结合fileinput插件批量上传文件!以下是我在使用fileinput上传文件的过程.项目是基 ...

  2. IntelliJ IDEA 中的Java Web项目的资源文件复制新增如何更新到部署包中?

    文章目录 resources目录下的文件复制新增 webapp目录的文件复制新增 IntelliJ IDEA 中的Java Web项目的资源文件如果复制新增,正常的重新部署.重启服务器.update ...

  3. 视频文件 wrf格式,可以通过WRF格式视频转换器_wrf转成wmv 转换成 wmv格式,可以在电脑或手机上观看,且声音也能转换过来。之前wrf用耳机貌似播放不出来,之后是可以播放出来的。

    视频文件 wrf格式,可以通过WRF格式视频转换器_wrf转成wmv 转换成 wmv格式,可以在电脑或手机上观看,且声音也能转换过来.之前wrf用耳机貌似播放不出来,之后是可以播放出来的. wmv可以 ...

  4. 电脑视频文件太大怎么压缩?电脑压缩视频大小

    电脑视频文件太大怎么压缩?随着制作视频的小伙伴越来越多,大家都想把制作好的视频上传到一些平台分享自己的作品,有时候我们会遇到视频过大的问题,今天给大家分享下压缩视频的方法: 搜索一下: ~~~~~~~ ...

  5. tomcat temp 大量 upload 文件_问题:JavaWeb中实现文件上传的方式有哪些?

    问题:JavaWeb中实现文件上传的方式有哪些? 上回我们说了下文件下载的方式有哪些,这次我们从不同的环境下简单来说说文件上传的方式有哪些. 文件上传的方式 Servlet2.5 方式 Servlet ...

  6. 码云上传文件夹_码云上传本地文件夹,码云只能上传20个文件的突破方法

    码云官方地址:https://gitee.com/ 很多人不知道码云上传本地文件夹怎么操作,或者如何突破码云只能上传20个文件限制的问题,今天就来说说这事的方法吧. 简介: 码云是媲美GitHub的代 ...

  7. html5 上传超大文件,HTML5教程 如何拖拽上传大文件

    本篇教程探讨了HTML5教程 如何拖拽上传大文件,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 . < 前言: 大文件传输一直是技术上的一大难点.文件过大时,一些性 ...

  8. java按需读取word文件_干货分享:ASP.NET CORE(C#)与Spring Boot MVC(JAVA)异曲同工的编程方式总结...

    我(梦在旅途,http://zuowj.cnblogs.com; http://www.zuowenjun.cn)最近发表的一篇文章<.NET CORE与Spring Boot编写控制台程序应有 ...

  9. go语言接收html上传的文件,html5原生js拖拽上传(golang版)

    package main import ("fmt" "io" "net/http" "os")const( uploa ...

最新文章

  1. 分页请求json数据_pyspider抓取虎嗅网文章数据
  2. CSU 1081集训队分组(搜索)
  3. IDEA如何重新刷新pom.xml文件重新下载
  4. vtk鼠标不交互_vtk 各种不同的鼠标交互方式
  5. lodop指定打印机打印_GitHub - xtjatswc/formext: 基于Lodop封装的打印框架,支持表单、报表配置。...
  6. c语言指针详解(概念示例)
  7. java cpu 内存使用情况_java高cpu占用和高内存占用问题排查 (转)
  8. RHEL 8 - RHEL自带AppStream应用模块管理
  9. mysql无法输入数据库_关于mysql数据库无法录入中文的问题
  10. LeetCode 526. Beautiful Arrangement
  11. 关于JDK中的集合总结(二)
  12. JSK-353 求同存异【暴力+排序+二分】
  13. 2019蓝桥杯Java决赛题答案_2019第十届蓝桥杯Java题
  14. JUC笔记-同步器(AQS原理、ReentrantLock原理)
  15. Eclipse官方下载最新版
  16. 聊求职:写简历的大原则与小技巧
  17. Word文档分栏操作释疑
  18. python 008 __ 小斌文档 | 元组
  19. ubuntu下定时清理文件
  20. 端口复用技术简单了解;重用端口;socket复用端口

热门文章

  1. mysql eav设计模型_Magento 2数据库EAV模型结构
  2. idea如何连接达梦数据库
  3. 前端基础-TCP/IP 不完全详解
  4. centos7部署mysql5.6_Centos7 RPM方式安装部署mysql5.6
  5. 基于Python模仿流量攻击的方法对字节编码攻击
  6. 深度学习图像处理目标检测图像分割计算机视觉 02--图像特征与描述
  7. uniapp推出小程序SDK,会是一场技术驱动的行业变革吗?
  8. PY-NumPy | 蓝色妖姬
  9. C20_OC10-内存管理
  10. JSP实现登录注册并链接数据库页面