Servlet3.0实现文件上传的方法
Servlet 实现文件上传
所谓文件上传就是将本地的文件发送到服务器中保存。例如我们向百度网盘中上传本地的资源或者我们将写好的博客上传到服务器等等就是典型的文件上传。
Servlet 3.0
上次完成文件下载功能使用的是 Servlet 2.5,但是想要完成文件上传,那么继续使用 Servlet 2.5
肯定不是一个好的选择,因此我们使用 Servlet 3.0
来完成文件上传。下面我来简单介绍一下 Servlet 3.0 的新特性:
1、新增的注解支持
该版本新增了若干注解,用于简化 Servlet、过滤器(Filter)和监听器(Listener)的声明,这使得 web.xml 部署描述文件从该版本开始不再是必选的了。
2、HttpServletRequest 对文件上传的支持
此前,对于处理上传文件的操作一直是让开发者头疼的问题,因为 Servlet 本身没有对此提供直接的支持,需要使用第三方框架来实现,而且使用起来也不够简单。如今这都成为了历史,Servlet 3.0 已经提供了这个功能,而且使用也非常简单。
Servlet 3.0 的新特性当然肯定不止这些,但是其他的新特性在这里我们暂时还用不到,也就不做过多了解了。
必要条件
想要完成文件上传,肯定不是这么简单,它对浏览器端和服务器端都有许多的要求。
对浏览器的要求:
- 一个文件的大小一般肯定不止 1 KB,既然这样,那么要上传一个文件肯定不能使用
get
方式了,所以上传文件时必须采用post
方式。 - 2.表单中必须有一个文件上传项
<input type="file">
,而且必须有 name 属性。 - 必须设置表单的
enctype
属性值为multipart/form-data
。
对服务器的要求:
- 当然,我们肯定得使用 Servlet 3.0。
- Servlet 3.0 中接收普通上传组件(除了文件上传组件)通过
request.getParameter(String)
接收,而文件上传组件通过request.getPart(String)
接收。 - Servlet 3.0 要求服务器必须是
Tomcat7
及其以上。
准备工作
工欲善其事,必先利其器。
首先,打开 Eclipse
,新建一个 Dynamic Web Project
。
键入项目名,选择运行时环境为 Apache Tomcat v7.0
,选择 Servlet 版本为 3.0
,然后点击 Finished
。
在项目的 WebContent
目录下,新建一个文件夹 upload
,用来存放上传过来的文件。
在 WebContent
目录下新建一个 index.jsp
。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>上传</title> </head> <body> <form action="${pageContext.request.contextPath}/UploadServlet" method="post" enctype="multipart/form-data"> <label>选择一个文件:</label> <input type="file" name="file"><br> <input type="submit" value="上传"><br> </form> </body></html>
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
Servlet3.0实现文件上传的方法
下载Word文档到电脑,方便收藏和打印~
相关文章
- Java 中 concat 函数的用法究竟是什么?(java中concat函数的用法是什么)
- 如何利用 Bootstrap 增强 Java Web 应用的交互性?(利用Bootstrap增强Java Web应用的交互性)
- 如何在 Java 中进行 PropertyGrid 的性能优化?(Java中PropertyGrid的性能优化方法)
- Java ushort 类型存在哪些安全隐患?如何进行分析?(java ushort类型的安全隐患分析 )
- Java 高并发编程的最佳实践都有哪些?(java高并发编程的最佳实践有哪些)
- Java 中如何定义一个方法?(详细教程)(java怎么定义一个方法)
- 在 Java 中,反射究竟是什么?(java中反射是什么)
- Java 中 metrics 的作用究竟是什么?(java中metrics的作用是什么)
- Java 怎样才能编译成 class?(java如何编译成class)
- 掌握PHP数据类型转换:实用工具与技巧
猜你喜欢
Servlet3.0实现文件上传的方法
SpringMVC + servlet3.0 文件上传的配置和实现代码
使用Servlet3.0如何实现一个上传文件功能
Android实现上传文件功能的方法
jsp 实现上传文件的两种方法
Java实现文件上传的方法总结
Nodejs+express中间件实现文件上传的方法
Java实现文件上传的方法有哪些
java文件上传的实现方法是什么
JDK1.7以上javaFTP上传删除文件的实现方法
django1.8使用表单上传文件的实现方法
什么年代了,你还不知道 Servlet3.0 中的文件上传方式?
PHP多文件上传实现格式化的方法
在Java项目中实现文件上传的方法
Vue在大文件上传和断点续传的实现方法
React文件分段上传实现方法详解
编程热搜
Python 学习之路 - Python
一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-chatgpt的中文全称是什么
chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列C/C++可变参数的使用
可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃Python 3 教程
Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 PythonPython pip包管理
一、前言 在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install 和 pip , 目前官方推荐使用 pip。
编程资源站
- 资料下载
- 历年试题