当前位置:首页 » 文件管理 » java怎么实现视频上传视频

java怎么实现视频上传视频

发布时间: 2022-12-16 09:23:24

java 怎么上传视频 上传到服务器 然后再读

找个JAVA文件上传的包,或者用Struts的方法,文件存在服务器上,把URL记住,直接在网页上加载就OK

Ⅱ java实现网站视频的上传与播放求解,该怎么处理

转码可以用ffmpeg,为的是你播放器不用支持多种格式,之后播放,得看你用户端的需求,如果用http streaming,apache有mole,如果需要其他协议,则可能需要专业的streaming服务器,比如wowza,客户端如果是一般浏览器可以是flash player,如果是apple那些破玩意,他自己带的播放器,但协议不一样,需要服务端的支持,这个问题记得远标之前就讲过,记得好像是这样的,希望对你有所帮助!

Ⅲ java怎么实现视频上传

方法/步骤

  • 1

    首先这里jsp页面的代码 定义布局文件html的 如图所示

Ⅳ java如何实现视频的上传和分享

你的需求是一套解决方案,不是单独的一个JAVA了。

例如视频的上传、转码处理、视频播放等等,光是JAVA估计不能解决的。

Ⅳ 怎样使用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

  • <%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>

  • <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">

  • <html>

  • <head>

  • <title>MyJSP'index.jsp'startingpage</title>

  • </head>

  • <body>

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

  • <formaction="${pageContext.request.contextPath}/upload1"

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

  • <inputtype="text"name="content"><br>

  • <inputtype="file"name="f"><br><inputtype="submit"

  • value="上传">

  • </form>

  • </body>

  • </html>

  • 新建Upload1Servlet 路径:/upload1

    [java]view plain

  • packagecn.itcast.web.servlet;

  • importjava.io.IOException;

  • importjava.io.InputStream;

  • importjavax.servlet.ServletException;

  • importjavax.servlet.http.HttpServlet;

  • importjavax.servlet.http.HttpServletRequest;

  • importjavax.servlet.http.HttpServletResponse;

  • {

  • publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

  • throwsServletException,IOException{

  • //System.out.println("upload1servlet......");

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

  • InputStreamis=request.getInputStream();

  • byte[]b=newbyte[1024];

  • intlen=-1;

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

  • System.out.println(newString(b,0,len));

  • }

  • is.close();

  • }

  • publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

  • throwsServletException,IOException{

  • doGet(request,response);

  • }

  • }

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


    文件上传概述

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

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

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

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

    <input type="file">标签用于在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 项目开发 实现上传视频。

上传视频?只是上传的话,相当于,上传文件了
html如下
<form action="MultipartTestServlet" enctype="multipart/form-data" method="post">
<input type="text" name="username" /><br />
<input type="file" name="myfile" /><br/>
<input type="submit" />
</form>

java如下
MultipartTestServlet.java

package com.bug.servlet;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUpload;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.RequestContext;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.fileupload.servlet.ServletRequestContext;

public class MultipartTestServlet extends HttpServlet {

public MultipartTestServlet() {
super();
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

request.setCharacterEncoding("gbk");
RequestContext requestContext = new ServletRequestContext(request);

if(FileUpload.isMultipartContent(requestContext)){

DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setRepository(new File("c:/tmp/"));
ServletFileUpload upload = new ServletFileUpload(factory);
//upload.setHeaderEncoding("gbk");
upload.setSizeMax(2000000);
List items = new ArrayList();
try {
items = upload.parseRequest(request);
} catch (FileUploadException e1) {
System.out.println("文件上传发生错误" + e1.getMessage());
}

Iterator it = items.iterator();
while(it.hasNext()){
FileItem fileItem = (FileItem) it.next();
if(fileItem.isFormField()){
System.out.println(fileItem.getFieldName() + " " + fileItem.getName() + " " + new String(fileItem.getString().getBytes("iso8859-1"), "gbk"));
}else{
System.out.println(fileItem.getFieldName() + " " +
fileItem.getName() + " " +
fileItem.isInMemory() + " " +
fileItem.getContentType() + " " +
fileItem.getSize());

if(fileItem.getName()!=null && fileItem.getSize()!=0){
File fullFile = new File(fileItem.getName());
File newFile = new File("c:/temp/" + fullFile.getName());
try {
fileItem.write(newFile);
} catch (Exception e) {
e.printStackTrace();
}
}else{
System.out.println("文件没有选择 或 文件内容为空");
}
}

}
}
}

}
web.xml中加入

<servlet>
<servlet-name>MultipartTestServlet</servlet-name>
<servlet-class>com.bug.servlet.MultipartTestServlet</servlet-class>
</servlet>

需要的包到这三个地方下载
http://jakarta.apache.org/commons/fileupload/下载
http://jakarta.apache.org/commons/io/下载
在http://www.servlets.com/cos/下载

关于视频的播放,你只能自己再去找了

Ⅶ java在线播放视频和上传视频如果不用ssh这类框架该怎么实现

//初始化 表头mygrid = new dhtmlXGridObject('dataTable');mygrid.setImagePath("/imgs/");mygrid.setHeader("第1列标题,第2列标题");// 列标题用逗号隔开mygrid.setInitWidths("100,*"); // 各列宽度数字表示像素,弹性用*表示mygrid.setColAlign("center,left");mygrid.setSkin("light");mygrid.enableAutoHeight(true);mygrid.init(); //通过ajax 获取 你查询的list 你找个工具转成xml或者如果用struts等框架的话自带转换功能 <xml id=dataXML> <rows> <row id=1> <cell>cell11</cell> <cell>cell12</cell> </row> <row id=2> <cell>cell21</cell> <cell>cell22</cell> </row> </rows></xml> //上面是 最后拿到的数据格式 mygrid.parse($("#dataXML")[0]);//这一句就是加载到页面了

Ⅷ java web 项目如何实现视频上传然后播放功能

搞清楚两个问题:上传到自己的服务器还是第三方平台?播放器实用Flash还是H5播放器?
如果是上传到自己的服务器,使用H5播放。那上传视频就和普通的文件上传一样。都是通过Http上传。前端可以使用form表单上传也可以使用ajax异步上传。后台可以使用apache的Common-fileUpload工具来解析并保存文件。然后生成一个访问路径。将访问路径返回给前端的 video标签的src属性即可。通过几个简单的属性或脚本就能控制播放。
如果是上传到第三方平台,例如腾讯视频、爱奇艺、优酷等。他们都有开发者平台或者开放平台。一般都有一些jar工具类或者模板案例提供给你的。你上传之后,也有返回路径给你。这是一般都是嵌入它们的Flash插件。所以你只需要将那段Flash插件的HTML代码放入你的网页中就可以播放了。好处是,不需要自己存储。不需要准备播放器。坏处是,可能有广告。不是可能。是一定会有。

Ⅸ Javase怎么实现拖入视频自动播放视频

开启页面后则是客户端和服务器。
当开启页面后则是客户端和服务器的第一次交互,通过http协议得到页面。里面会有流媒体地址的信息,浏览器里面点击显示视频组件。
将流媒体的地址传给流媒体播放器,并启动播放器去请求视频。这是第二次交互。服务器端流媒体服务器发送流给客户端,就实现了页面上播放。

Ⅹ 用java怎么实现从前端接收、处理并传回视频

1、接收前端上传的文件

  • /**

  • * 接收多文件

  • */

  • @RequestMapping("/upload")

  • public R uploadFile(@RequestParam Map<String, Object> params, HttpServletRequest request) {

  • // 复杂类型的request对象

  • MultipartHttpServletRequest mRequest = (MultipartHttpServletRequest) request;

  • // 获取文件名集合放入迭代器

  • Iterator<String> files = mRequest.getFileNames();

  • while (files.hasNext()) {

  • // 获取上传文件的对象

  • MultipartFile mFile = mRequest.getFile(files.next());

  • if (mFile != null) {

  • //原始文件名称

  • String oldfile = mFile.getOriginalFilename();

  • //文件后缀

  • String suffix = oldfile.substring(oldfile.indexOf('.'), oldfile.length());

  • String suffix2 = oldfile.substring(oldfile.indexOf('.')+1, oldfile.length());

  • /***************文件处理*********************/

  • }

  • }

  • }

2.接收前端上传的文件

  • /**

  • * 接收附件

  • * @param request

  • * @return

  • */

  • @ResponseBody

  • @RequestMapping(value="fileupload",method=RequestMethod.POST)

  • public void springUpload(HttpServletRequest request) {

  • //将当前上下文初始化给 CommonsMutipartResolver (多部分解析器)

  • CommonsMultipartResolver multipartResolver=new CommonsMultipartResolver(

  • request.getSession().getServletContext());

  • //检查form中是否有enctype="multipart/form-data"

  • if(multipartResolver.isMultipart(request)) {

  • //将request变成多部分request

  • MultipartHttpServletRequest multiRequest=(MultipartHttpServletRequest)request;

  • //获取multiRequest 中所有的文件名

  • Iterator iter=multiRequest.getFileNames();

  • while(iter.hasNext()){

  • //一次遍历所有文件

  • MultipartFile file=multiRequest.getFile(iter.next().toString());

  • //最初上传文件名的文件名

  • String oldFilename = file.getOriginalFilename();

  • //获取初始文件名后缀

  • String fileSuffix = oldFilename.substring(oldFilename.lastIndexOf(".") +1);

  • /***************文件处理*********************/

  • }

  • }

3.接收前端上传的文件

  • /**

  • * 接收文件

  • *

  • *

  • * @param model

  • * @return

  • * @throws IOException

  • * @throws IllegalStateException

  • */

  • @RequestMapping(value = "imageupload")

  • public void imageUpload(MultipartFile file) throws IllegalStateException, IOException {

  • //文件名称

  • String realFileName = file.getOriginalFilename();

  • //文件后缀

  • String suffix = realFileName.substring(realFileName.lastIndexOf(".") + 1);

  • /***************文件处理*********************/

  • }

热点内容
Excel读取access数据库 发布:2025-08-14 00:13:51 浏览:549
android取list数据 发布:2025-08-14 00:01:07 浏览:448
玩客云上传 发布:2025-08-13 23:58:20 浏览:454
qq钱包怎么改密码 发布:2025-08-13 23:51:43 浏览:240
荣耀50参数配置什么系统 发布:2025-08-13 23:45:26 浏览:245
有关卖软件的脚本 发布:2025-08-13 23:44:30 浏览:625
辉煌标准版服务器地址 发布:2025-08-13 23:35:14 浏览:255
安卓更新后更新包哪里去了 发布:2025-08-13 23:35:09 浏览:824
R2脚本下载 发布:2025-08-13 23:20:46 浏览:631
泰国云服务器访问人数 发布:2025-08-13 23:20:45 浏览:482