當前位置:首頁 » 文件管理 » 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);

  • /***************文件處理*********************/

  • }

熱點內容
機變酷卡編程 發布:2025-08-14 15:25:54 瀏覽:881
ftp亂碼上傳 發布:2025-08-14 15:25:52 瀏覽:728
sqlserver2008數據類型 發布:2025-08-14 15:25:03 瀏覽:718
魂斗羅歸來解壓縮 發布:2025-08-14 15:17:00 瀏覽:862
農村存儲 發布:2025-08-14 15:16:49 瀏覽:300
windows之間使用ftp傳輸 發布:2025-08-14 15:16:01 瀏覽:371
c語言寫的俄羅斯方塊 發布:2025-08-14 15:13:01 瀏覽:886
安卓怎麼跟別人合拍唱歌有自己聲音 發布:2025-08-14 14:57:41 瀏覽:984
java在線培訓系統 發布:2025-08-14 14:56:03 瀏覽:646
電腦怎麼卸載伺服器管理 發布:2025-08-14 14:37:57 瀏覽:504