jsp視頻上傳
方法/步驟
1
首先這里jsp頁面的代碼 定義布局文件html的 如圖所示

2. jsp實現56上傳視頻功能
下載個MediaCoder-0.7.2.4506.exe 安圓冊陵裝後就可以執行ffmpeg.exe命令了
public class ConvertVideo {
public static void convertVideo(String systemFileName) {
System.out.println(systemFileName);
String videoImg=systemFileName.substring(0,systemFileName.lastIndexOf("."))+".gif";
System.out.println(videoImg);
if(processImg(systemFileName,videoImg)){
System.out.println("ok");
};
String videoBigImg=systemFileName.substring(0,systemFileName.lastIndexOf("."))+".jpg";
if(processBigImg(systemFileName,videoBigImg)){
System.out.println("BigImg ok");
};
}
public static void main(String[] args) {
// String videoImg=args[0].substring(0,args[0].lastIndexOf("."))+"";
if(processImg("","")){
System.out.println("ok");
};
}
// 生成圖片 參數String newfilename, String newimg
public static boolean processImg(String systemFileName ,String videoImg ) {
// System.out.println(newfilename + "->" + newimg);
List<String> commend = new java.util.ArrayList<String>();
commend.add("C:\\Program Files\\姿茄MediaCoder\\codecs\\ffmpeg.exe");
commend.add("-i");
// commend.add("g:\\test\\b.flv");
// commend.add("E:\\jboss-4.2.2.GA\\server\\default\\.\\deploy\\sell.war\\upload\\video\\1255593814968_zhangxiz.flv");
commend.add(systemFileName);
commend.add("-y");
commend.add("-f");
commend.add("image2");
commend.add("-ss");
commend.add("18");
commend.add("-t");
commend.add("0.001");
commend.add("-s"橘戚);
commend.add("132x90");
// commend.add("g:\\test\\44.jpg");
commend.add(videoImg);
try {
ProcessBuilder builder = new ProcessBuilder();
builder.command(commend);
Process process = builder.start();
final InputStream is1 = process.getInputStream();
new Thread(new Runnable() {
public void run() {
BufferedReader br = new BufferedReader(new InputStreamReader(is1));
try {
while(br.readLine() != null) ;
} catch (IOException e) {
e.printStackTrace();
}
}
}).start(); // 啟動單獨的線程來清空process.getInputStream()的緩沖區
InputStream is2 = process.getErrorStream();
BufferedReader br2 = new BufferedReader(new InputStreamReader(is2));
StringBuilder buf = new StringBuilder(); // 保存輸出結果流
String line = null;
while((line = br2.readLine()) != null) buf.append(line);
// builder.start();
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
上面是我的代碼 你看看自己調試下吧
3. jsp頁面中如何視頻文件上傳的代碼實現
jsp 獲取視頻文件進行播放 跟html沒什麼區別 可以調用不同播放器的代碼 ,比如MEDIA播放器:
<OBJECT ID="mediaplayer" WIDTH="50%" HEIGHT="50%" CLASSID="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">
<!--播放的文件的地址-->
<param name="url" value="http://www..com"/>
<!--去除右鍵菜單-->
<param name="enableContextMenu" value="false"/>
<param name="autoStart" value="true" />
</OBJECT>
4. 用JSPsmartupload.jar能上傳視頻,音樂嗎只能傳圖片和文本之類的文件嗎 求解答 最好能給出代碼 謝謝
我以前項目使用過,但是後來被摒棄了,因為jspsmartupload.jar已經很久沒有更新,而且它在上傳大文件時會有問題
建議使用commons-fileupload.jar(另外需要commons-io.jar)
下面為部分源代碼:
/**Create a factory for disk-based file items*/
DiskFileItemFactory factory = new DiskFileItemFactory();
/**設置最大的內祥念塌存大小*/
factory.setSizeThreshold(4096);
/**創建一個新的文謹圓件上傳操作*/
ServletFileUpload upload = new ServletFileUpload(factory);
/**設置能上傳的最大文件的大小*/
upload.setSizeMax(10*1024);
/**Parse the request*/
List fileItems = upload.parseRequest(request);
//開始讀取上傳信息
Iterator iter = fileItems.iterator();
// 依次處理每個上傳的文件
while(iter.hasNext()) {
FileItem item = (FileItem) iter.next();
// 忽略其他不是文件高亂域的所有表單信息
if (!item.isFormField()) {
String name = item.getName();
String endName = name.substring(name.lastIndexOf(".") + 1);
try{
item.write(new File(request.getRealPath("\\"+sUploadDir+FileName+"."+ endName)));
}catch(Exception e){
e.printStackTrace();
}
5. 求JSP上傳文件的代碼 圖片 視頻 音頻WORD 之類的文件
這個比較簡單
選擇圖片的jsp頁面的form
<form action="doUploadImage.jsp" encType=multipart/form-data method=post >
本地選擇:
<input type="file" name="selPicture"
style="width: 330px; height: 23px; font-size: 16px">
<input type="submit" name="upload" id="upload" value="上傳"
style="width: 70px; height: 25px">
</form>
接收頁面
<%@ page language="java" import="java.util.*,com.jspsmart.upload.*,java.io.*"
pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'doUploadImage.jsp' starting page</title>
</head>
<body>
<%
request.setCharacterEncoding("GBK");
long size = 5 * 1024 * 1024;//允許上傳最大值為5MB
String fileType = "jpg,gif,JPG";//允許上傳文件類型
String imgName = null;//圖片名稱
byte[] data = null;//數據
String filePath = "";//文件路徑
//得到伺服器目錄webroot下的ImageFiles目錄的完整罩局路徑
String path = super.getServletContext().getRealPath("/Image");
System.out.println(path);
SmartUpload su = new SmartUpload();
//初始化
su.initialize(pageContext);
su.setMaxFileSize(size);
su.setAllowedFilesList(fileType);
su.setCharSet("GBK");
//上載文件
su.upload();
System.out.println(su.getSize());
su.getRequest();
//循環取得所有上載的文件
Files files = su.getFiles();
if (files != null) {
//如果文件路徑不存在則生成路徑
java.io.File fileDir = new java.io.File(path);
System.out.println("物穗讓存在");
if (!fileDir.exists()) {
fileDir.mkdirs();
System.out.println("不存在");
}
System.out.println(files.getCount());
//取出文件
for (int i = 0; i < files.getCount(); i++)
{
com.jspsmart.upload.File file = files.getFile(i);
if (file.isMissing()) continue;
if ("selPicture".equals(file.getFieldName())) {
String type = file.getFilePathName();
type = type.substring(type.lastIndexOf("."));
imgName = UUID.randomUUID().toString();//生成uuid作為圖片的名稱
imgName += type;
filePath = path + "/" + imgName;
//保存到指定文件
file.saveAs(filePath);
//讀取文件
data = readFile(filePath);
break;
}
}
}
if (data == null) {
out.print("族歲沒有圖片");
} else {
out.print("圖片上傳成功");
}
%>
<%!byte[] readFile(String filePath) {
ByteArrayOutputStream bos = null;
try {
FileInputStream fs = new FileInputStream(filePath);
bos = new ByteArrayOutputStream(5 * 1024 * 1024);
byte[] b = new byte[1024];
int len;
while ((len = fs.read(b)) != -1) {
bos.write(b, 0, len);
}
fs.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if (bos == null) {
return null;
} else {
return bos.toByteArray();
}
}
%>
<%=request.getParameter("name") %>
</body>
</html>
有問題q我 379726806
後面data那一段時測試的 用的時候刪除掉 這是我寫的一個測試小工程 在項目裡面用的時候是把接收圖片放在servlet中的
我也是才搞了一個圖片上傳的東東
6. 自己創建網頁,怎樣才能上傳視頻到自己的網頁呢
上傳視頻到自己的網頁的注意事項以及操作思路:
視頻放到網站根目錄訪問就能播放了。上傳視頻到ftp伺服器,是針對上傳視頻到tomcat下並播放完善的,畢竟上傳到tomcat目錄下的話,放幾個視頻文件磁碟就滿了,所以存到另外的伺服器是必然的。
由於video.js里播放視頻的標簽不支持絕對路徑(如D:/這樣的),只能存放在tomcat下面的相對路徑,所以跳過了存放其他磁碟的步驟,直接開始試驗FTP伺服器了。

首先呢,當然是建立FTP伺服器,要開兩個埠號去建立兩個FTP,
一個用來上傳(需要用戶名密碼登錄,設置寫入許可權、讀取許可權),一個用來播放(可以匿名訪問,設置讀取許可權)。
注意在項目中下載時,將文件從ftp伺服器下載到應用伺服器,流寫出去然後刪除應用伺服器的文件,以避免應用伺服器壓力
(6)jsp視頻上傳擴展閱讀:
常見網頁設計上傳視頻工具軟體:
Amaya(單位:萬維網聯盟)用於編輯HTML、CSS、數學標記語言、可縮放矢量圖形的工具;
Dreamweaver(單位:奧多比)用於編輯HTML、ASP、JSP、PHP的輔助工具;Frontpage(單位:微軟)跟Dreamweaver一樣;
FLASH(單位:奧多比)網頁需要畫面流動(動畫)時的首選擇。
還需要租借比較大的伺服器,因為視頻上傳需要比較大的儲存空間;需要設計下網站上的上傳的ui設計,這個是需要方便用戶上傳;還需要建立我們的資料庫,來存儲的資料庫支撐我們的網站。
