28 文件上传、文件下载
一、概述
1.1
将客户端的文件通过io流传输到服务器上
1.2 文件上传技术
JspSmartUpload : 应用在jsp技术文件上传
FileUpload : 要学习的文件上传的组件
Servlet3.0------->只支持servlet3.0之后
框架也提供了文件上传的组件
1.3 文件上传原理
抓包
源码————>maven项目
文件上传、下载参考
https://www.cnblogs.com/xdp-gacl/p/4200090.html
-
-
Api的学习
-
DiskFileItemFactory
-
-
构造方法:
DiskFileItemFactory(int sizeThreshold, java.io.File repository)
参数:
int sizeThreshold : 设置缓冲区的大小
File repository : 临时目录
成员方法:
setSizeThreshold(int sizeThreshold)
setRepository(java.io.File repository)
-
-
-
ServletFileUpload : 解析request对象的
-
-
构造方法:
ServletFileUpload(FileItemFactory fileItemFactory)
成员方法:
解析request对象
List<FileItem> |
parseRequest(HttpServletRequest request) |
判断enctype属性设置是否为multipart/form-data
static boolean |
isMultipartContent(HttpServletRequest request) |
如果获取文件名出现乱码问题,就可以使用下面方法进行设置
void setHeaderEncoding(String encoding)
-
-
-
FileItem : 输入项(可能是普通输入项,也可能是文件上传输入项)
-
-
普通输入项:
获取字段的名称
String |
获取文本输入内容
String |
|
String |
getString(java.lang.String encoding) |
文件上传项:
获取文件名称
String |
getName() |
获取文件内容
InputStream |