【JAVAWEB学习笔记】29_文件的上传------commons-fileupload
今天内容:
文件的上传------commons-fileupload
文件上传和下载的实质:文件的拷贝
文件上传:从本地拷贝到服务器磁盘上 客户端需要编写文件上传表单---->服务端需要编写代码接受上传的 文件
文件下载:从服务器磁盘上拷贝到本地磁盘 需要编写服务端的代码,客户端的下载的工作浏览器内核解决的
一、文件上传
1、文件上传的步骤:
(1) 需要写一个文件上传表单
(2) 编写服务器端的代码用于接收上传的文件
2、客户端的编码
注意事项:

3、服务端接受文件上传的表单数据
文件上传接收原理

使用方便快捷的文件上传的工具---Apache Commons-fileupload.jar
使用步骤:
(1) 下载文件上传的jar包 fileuplaod 借助于 commons-io.jar

(2) 使用fileupload工具中的API进行编码
4、FileUpload工具中三个核心的对象
DiskFileItemFactory:磁盘文件项工厂--一些相关的配置的设置 缓存的大小 临时目录的位置
ServletFileUplaod:文件上传的一个核心类
FileItem:代表每一个表单项
5、快速入门
6、文件上传的API的详解
(1) DiskFileItemFactory
设置缓存大小:factory.setSizeThreshold() 单位是字节
设置临时文件的目录:factory.setRepository(File)
(2) ServletFileUpload
判断是否是一个文件上传的表单:ServletFileUpload.isMultipartContent(request);
解析request获得表单项的集合:upload.parseRequest(request);
设置上传的文件名的编码方式:upload.setHeaderEncoding("UTF-8");
(3) FileItem
判断是否是普通表单项:item.isFormField();
获得表单的name属性值:item.getFieldName();
获得表单的value值:item.getString("UTF-8") --- UTF-8表示获得中文时的编码
获得上传文件的名称:item.getName()
获得上传文件:item.getInputStream();
删除临时文件:item.delete();
【JAVAWEB学习笔记】29_文件的上传------commons-fileupload的更多相关文章
- 文件的上传Commons FileUpload(web基础学习笔记十六)
一.表单设置 <form action="<%=request.getContextPath()%>/jsp/admin/doAdd.jsp" enctype=& ...
- php学习笔记:文件的上传(包含设置文件的上传大小限制)
今天写的是文件上传,前几天自学的正规则又忘记了,用了很笨的方法去判断格式,直接上代码: <?php /** * Created by PhpStorm. * User: Administrato ...
- Javaweb学习笔记10—文件上传与下载
今天来讲javaweb的第10阶段学习.文件的上传与下载,今天主要说的是这个功能的实现,不用说了,听名字就是外行人也知道肯定很重要啦. 老规矩,首先先用一张思维导图来展现今天的博客内容. ...
- [原创]java WEB学习笔记72:Struts2 学习之路-- 文件的上传下载,及上传下载相关问题
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- JavaWeb框架_Struts2_(七)----->文件的上传和下载
这个章节是Struts2框架应用最广泛的三个版块(上传下载.国际化.校验输入)之一,所以这一版块的学习还蛮重要的. 1. 章节目录 Struts2文件上传 单文件上传 拦截器实现文件过滤 文件上传常量 ...
- java学习笔记 (8) —— Struts2 实现上传
1.新建upload.jsp <%@ page language="java" import="java.util.*" pageEncoding=&qu ...
- 【代码学习】PHP文件的上传和下载
===================== 文件上传和下载 ===================== 一.php.ini的配置信息 file_uploads = On /Off 是否允许文件上 ...
- SpringMVC学习09(文件的上传和下载)
文件上传和下载 准备工作 文件上传是项目开发中最常见的功能之一 ,springMVC 可以很好的支持文件上传,但是SpringMVC上下文中默认没有装配MultipartResolver,因此默认情况 ...
- 文件上传 - Commons FileUpload介绍
概述 FileUpload能够以多种不同的方式使用,具体取决于应用程序的要求.在最简单的情况下,调用单个方法来解析servlet请求,然后处理解析出来的Item集合.此外也可以自定义FileUploa ...
随机推荐
- html5脚本编程
(1)跨文档消息传递,XDM.指的是来自不同域的页面间传递消息. XDM的核心是postMessage();向另一个地方传递数据,指是包含在当前页面中的iframe元素,由当前页面弹出的窗口. var ...
- IOS——触摸事件 视图检测和事件传递
iPhone上有非常流畅的用户触摸交互体验,能检测各种手势:点击,滑动,放大缩小,旋转.大多数情况都是用UI*GestureRecognizer这样的手势对象来关联手势事件和手势处理函数.也有时候,会 ...
- Unity粒子系统
最近比较清闲,就重新看了一遍例子系统,感觉能把效果做的炫酷对于初学者来说并不是一件容易的事,但是回头想想,最重要的原因可能还是没有把Particle Systems组件研究透吧,温故而知新,一起复习一 ...
- 关于Java中继承多接口同名方法的问题
在Java中如果一个类同时继承接口A与B,并且这两个接口中具有同名方法,会怎么样? 动手做实验: interface A{ void fun(); } interface B{ void fun(); ...
- Mac 下载安装MySQL
step 1. 从官网上下载MySQL Community Server step 2. 安装MySQL step 3. 配置mysql和mysqladmin的alias $ vim ~/.bashr ...
- Java匿名内部类使用与示例
首先说为什么有匿名类 两个原因(产生的使命) 1.简化代码编写 某种情况下,类只需要扩展一个方法,没必要为了一个方法单独去写一个子类,然后然后调用子类,此时需要匿名类 2.在不同的包内的类内调用类的p ...
- 使用webpack打包css和js
1.安装webpack. npm install webpack -g 2.创建一个文件夹app. 3.新建文件test.js. require("!style-loader!css-loa ...
- Java AOP (1) compile time weaving 【Java 切面编程 (1) 编译期织入】
According to wikipedia aspect-oriented programming (AOP) is a programming paradigm that aims to inc ...
- AngularJS2基本构造
2.NG2入门 2.1 基本构造 angularjs主要有8个构造快: 模块(module) 组件(component) 模板(template) 元数据(metadata) 数据绑定(data bi ...
- HashSet实现原理
/* HashSet的实现原理: 往HashSet添加元素的时候,HashSet会先调用元素的hashCode方法得到元素的哈希值 , 然后通过元素 的哈希值经过移位等运算,就可以算出该元素在哈希表中 ...