怎样使用javaweb实现上传视频和功能?

文件上传就是将客户端资源,通过网路传递到服务器端。

因为文件数据比较大,必须通过文件上传才可以完成将数据保存到数据库端的操作。

文件上传的本质就是IO流操作。

演示:文件上传应该如何操作?

浏览器端:

1.method=post 只有post才可以携带大数据

2.必须使用<input type='file' name='f'>要有name属性

3.encType="multipart/form-data"

服务器端:

request对象是用于获取请求信息。

它有一个方法 ?getInputStream(); 可以获取一个字节输入流,通过这个流,可以读取到

所有的请求正文信息.

文件上传原理:

浏览器端注意上述三件事,在服务器端通过流将数据读取到,在对数据进行解析.

将上传文件内容得到,保存在服务器端,就完成了文件上传。

注意:在实际开发中,不需要我们进行数据解析,完成文件上传。因为我们会使用文件上传的工具,它们已经封装好的,提供API,只要调用它们的API就可以完成文件上传操作.我们使用的commons-fileupload,它是apache提供的一套开源免费的文件上传工具。

代码演示文件上传的原理:

在WebRoot下新建upload1.jsp

[html]?view plain?copy

<%@?page?language="java"?import="java.util.*"?pageEncoding="UTF-8"%>

<!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN">

<html>

<head>

<title>My?JSP?'index.jsp'?starting?page</title>

</head>

<body>

<!--?encType?默认是application/x-www-form-urlencoded?-->

<form?action="${pageContext.request.contextPath?}/upload1"

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

<input?type="text"?name="content"><br>

<input?type="file"?name="f"><br>?<input?type="submit"

value="上传">

</form>

</body>

</html>

新建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.mons-io。commo-io不属于文件上传组件的开发jar文件,但Commons-fileupload组件从1.1版本开始,它工作时需要commons-io包的支持。