當前位置:首頁 » 文件傳輸 » jsp上傳視頻到伺服器
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

jsp上傳視頻到伺服器

發布時間: 2022-05-11 03:22:45

① jsp smartupload如何上傳固定位置文件到伺服器

你雖然問得很簡單,但是做過相關項目的人都是知道這個問題比較復雜,為什麼一定要用form表單上傳,這是因為文件上傳必須要通過以下步驟。
1、客戶端和伺服器建立連接。
2、客戶端可以向伺服器端發送數據。因為上傳文件實質上也是向伺服器端發送請求。
3、客戶端按照符合「multipart/form-data」的格式向伺服器端發送數據。
注意,客戶端要向伺服器發送的請求是「multipart/form-data」」格式的數據,Multipart/form-data格式就是瀏覽器用表單提交數據的格式。
你不用表單如何實現這個格式?
如果不想用表單可以推薦你幾種方法。
1、動態創建表單,這個方法不影響你的頁面布局,可以通過彈出<div>嵌入<form>實現或者使用隱藏的<form>來實現。一般都推薦這個方法。
2、用ajaxFileUpload組件或其他組件,非同步上傳,原理也是動態創建表單。

② 自己創建網頁,怎樣才能上傳視頻到自己的網頁呢

上傳視頻到自己的網頁的注意事項以及操作思路:

視頻放到網站根目錄訪問就能播放了。上傳視頻到FTP伺服器,是針對上傳視頻到tomcat下並播放完善的,畢竟上傳到tomcat目錄下的話,放幾個視頻文件磁碟就滿了,所以存到另外的伺服器是必然的。

由於video.js里播放視頻的標簽不支持絕對路徑(如D:/這樣的),只能存放在tomcat下面的相對路徑,所以跳過了存放其他磁碟的步驟,直接開始試驗FTP伺服器了。

首先呢,當然是建立FTP伺服器,要開兩個埠號去建立兩個FTP,

一個用來上傳(需要用戶名密碼登錄,設置寫入許可權、讀取許可權),一個用來播放(可以匿名訪問,設置讀取許可權)。

注意在項目中下載時,將文件從ftp伺服器下載到應用伺服器,流寫出去然後刪除應用伺服器的文件,以避免應用伺服器壓力

(2)jsp上傳視頻到伺服器擴展閱讀:

常見網頁設計上傳視頻工具軟體:

Amaya(單位:萬維網聯盟)用於編輯HTML、CSS、數學標記語言、可縮放矢量圖形的工具;

Dreamweaver(單位:奧多比)用於編輯HTML、ASP、JSP、PHP的輔助工具;Frontpage(單位:微軟)跟Dreamweaver一樣;

FLASH(單位:奧多比)網頁需要畫面流動(動畫)時的首選擇。

還需要租借比較大的伺服器,因為視頻上傳需要比較大的儲存空間;需要設計下網站上的上傳的ui設計,這個是需要方便用戶上傳;還需要建立我們的資料庫,來存儲的資料庫支撐我們的網站。

③ 怎麼用JSP把本地的文件夾上傳到FTP伺服器

前段時間做了一個文件上傳ftp功能,你參照一下

package com.ftp.upload;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import org.apache.commons.net.ftp.FTPReply;

public class FTPUpload {
private FTPClient ftpClient = null;

private OutputStream outSteam = null;

/**
* ftp伺服器地址
*/
private String hostname = "192.168.1.2";
/**
* ftp伺服器埠
*/
int port = 21;
/**
* 登錄名
*/
private String username = "admin";

/**
* 登錄密碼
*/
private String password = "admin";

/**
* 需要訪問的遠程目錄
*/
private String remoteDir = "/home/demo";

public FTPUpload() { }

public FTPUpload(String hostname, int port, String username, String password, String remoteDir){
this.hostname = hostname;
this.port = port;
this.username = username;
this.password = password;
this.remoteDir = remoteDir;

}
/**
* 連接FTP伺服器 並登錄
* @param hostName FTP伺服器hostname
* @param port FTP伺服器埠
* @param username FTP登錄賬號
* @param password FTP登錄密碼
*/
private FTPClient connectFTPServer() {
try {
//1.創建FTPClient對象
ftpClient = new FTPClient();
//2.連接FTP伺服器
// 如果採用默認埠,可以使用ftp.connect(url)的方式直接連接FTP伺服器
ftpClient.connect(hostname, port); //鏈接到ftp伺服器
// System.out.println("連接到ftp伺服器地址 --> ftp://" + hostName + ":" + port + " 成功..開始登錄");

//3.判斷連接ftp伺服器是否成功
int reply = ftpClient.getReplyCode();
// System.out.println("以2開頭的返回值就會為真:" + reply);
//以2開頭的返回值就會為真
if (!FTPReply.isPositiveCompletion(reply)) {
ftpClient.disconnect();
return null;
}

//4.登錄FTP伺服器.用戶名 密碼
ftpClient.login(username, password);
System.out.println("登錄成功." );

return ftpClient;
} catch (Exception e) {
e.printStackTrace();
ftpClient = null;
return ftpClient;
}
}

/**
* 向FTP伺服器上傳文件
* @param filePathName 上傳文件的全路徑名稱
* @return 成功返回true,否則返回false
*/
public boolean uploadFile(String filePathName) {
// 初始表示上傳失敗
boolean success = false;
try {
// 創建FTPClient對象
ftpClient = connectFTPServer();
//創建文件夾
boolean flag = ftpClient.makeDirectory(remoteDir);
if(flag) {
System.out.println("創建文件夾:" + remoteDir );
}

// 轉到指定上傳目錄
boolean flag0 = ftpClient.changeWorkingDirectory(remoteDir);
// 將上傳文件存儲到指定目錄
if(filePathName == null || filePathName.length() == 0){
return success;
}
String filename = filePathName.substring(filePathName.replace("\\", "/").lastIndexOf("/") + 1, filePathName.length());

InputStream input = new FileInputStream(new File(filePathName));

// ftpClient.setBufferSize(1024);
// ftpClient.setControlEncoding("GBK");
// ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);//設置文件類型

boolean flag1 = ftpClient.storeFile(filename, input);
System.out.println("轉到指定上傳目錄:" + flag0 + " 將上傳文件存儲到指定目錄:" + flag1);

input.close(); // 關閉輸入流
ftpClient.logout(); // 退出ftp
success = true; // 表示上傳成功

} catch (Exception e) {
e.printStackTrace();
} finally {
if (ftpClient.isConnected()) {
try {
ftpClient.disconnect();
} catch (IOException ioe) {
}
}
}
return success;
}

/**
* 從FTP伺服器指定目錄下載文件 到本地目錄中 OK
* @param fileName 要下載的文件名
* @param localPath 下載後保存到本地的路徑
* @param showlist 下載時是否顯示列表 ( true 顯示 )
* @return
*/
public boolean downFile(String fileName, String localPath, boolean showlist) {
// 初始表示下載失敗
boolean success = false;
if(fileName == null || fileName.length() == 0 || localPath == null || localPath.length() == 0){
return success;
}
try {
File file = new File(localPath);

if(!file.isDirectory()){
file.mkdir();
}
// 創建FTPClient對象
ftpClient = connectFTPServer();
// 轉到指定下載目錄
boolean flag = ftpClient.changeWorkingDirectory(remoteDir);
if(!flag) {
System.out.println("目錄:" + remoteDir +"不存在!");
return success;
}
// 列出該目錄下所有文件
FTPFile[] remoteFiles = ftpClient.listFiles();

// 遍歷所有文件,找到指定的文件
if(showlist){
System.out.println("目錄" + remoteDir + "下的文件:");
}

for (FTPFile ftpFile : remoteFiles) {
String name = ftpFile.getName();
if(showlist){
long length = ftpFile.getSize();
String readableLength = FileUtils.byteCountToDisplaySize(length);
System.out.println(name + ":\t\t" + readableLength);
}

if (name.equals(fileName)) {
// 根據絕對路徑初始化文件
File localFile = new File(localPath + "/" + name);
// 輸出流
OutputStream is = new FileOutputStream(localFile);
// 下載文件
ftpClient.retrieveFile(name, is);
is.close();
}
}
// 退出ftp
ftpClient.logout();
// 下載成功
success = true;
} catch (IOException e) {
e.printStackTrace();
} finally {
if (ftpClient.isConnected()) {
try {
ftpClient.disconnect();
} catch (IOException ioe) {
}
}
}
return success;
}

/**
* 顯示FTP伺服器指定文件夾中的文件及大小 OK
* @return
*/
private boolean showFileList() {
// 初始表示失敗
boolean success = false;
try {
ftpClient = connectFTPServer();
FTPFile[] remoteFiles = null;
// 轉到指定下載目錄
boolean flag = ftpClient.changeWorkingDirectory(remoteDir);
if(!flag) {
System.out.println("目錄:" + remoteDir +"不存在!");
return success;
} else{
remoteFiles = ftpClient.listFiles(remoteDir);
System.out.println("目錄" + remoteDir + "下的文件:");
}

if(remoteFiles != null) {
for(int i=0;i < remoteFiles.length; i++){
String name = remoteFiles[i].getName();
long length = remoteFiles[i].getSize();
String readableLength = FileUtils.byteCountToDisplaySize(length);
System.out.println(name + ":\t\t" + readableLength);
}
}
// 表示成功
success = true;
} catch (Exception e) {
e.printStackTrace();
} finally {
//使用IO包關閉流
IOUtils.closeQuietly(outSteam);
try {
ftpClient.disconnect();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
return success;
}
public static void main(String[] args) {
FTPUpload ftp = new FTPUpload();
ftp.uploadFile("c:////test////bgssp.jar");
}
}

④ 怎樣使用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包的支持。

⑤ jsp怎麼實現上傳文件到伺服器某個文件夾里

把文件數據提交到服務端,
只需要form表單就可以了,
<form method="post" enctype="multipart/form-data" action="">

<input type="file">
</form>
action就接收文件的地址,
就是你要寫保存文件的那個地址。
然後要寫保存文件的代碼,好吧,讓你失望了,手頭沒有,回頭找一下……

⑥ myeclipse中的一個jsp項目,怎麼上傳到伺服器(阿里雲的,已經配置好了環境)

用ftp上傳
一般問下客服
上傳到那個文件夾下
然後全部上傳
就可以了
資料庫
是要買的吧?100M的就可以了把

⑦ 通過JSP怎樣上傳圖片到伺服器

1.限制文件上傳類型只能是圖片
function checkFileType(name,file){
var extArray = new Array(".doc",".docx");
var allowSubmit = false;
if (!file){
return;
}
while (file.indexOf("\\") != -1){
file = file.slice(file.indexOf("\\") + 1);
}
var ext = file.slice(file.indexOf(".")).toLowerCase();
for (var i = 0; i < extArray.length; i++) {
if (extArray[i] == ext){
allowSubmit = true;
break;
}
}
if(!allowSubmit){
alert("只能上傳以下格式的文件:"+ (extArray.join("")) + "\n請重新選擇再上傳.");
document.getElementById(name).value = "";
}
}
其中:extArray是要求文件類型。可自行定義。

2.引入jQuery外部文件
jquery-2.1.4.min.js
3.編寫js代碼
$(function () {
$('#txtfilePath1').uploadReview({
width: 350,
height: 350,
target: '#uploadReview1_content'
});
});
其中:txtfilePath1是input:file。width,height是預覽圖片的寬度和高度。target是顯示預覽圖片的位置。

4.編寫jsp頁面代碼
<body>
<input type="text" class="yourClassName" name="filePath1" id="filePath1"/>
<input type="file" id="txtfilePath1" name="txtfilePath1" style="display:none;">
<input type="button" onclick="txtfilePath1.click()" id="fileup1" name="fileup1" class="searchThing"value="上傳">
</body>

註: 這個是很久以前在網上看到的,就整理了下來,但是這么久都沒用過,所以也沒調試過,你自己試一試研究研究, 再來網上很多博客里,他們寫的很詳細的,可以去看看

⑧ 求網頁上傳大型視頻文件到伺服器,解決方案

1、用戶向應用伺服器取到上傳policy和回調設置。
2、應用伺服器返回上傳policy和回調。
3、用戶直接向OSS發送文件上傳請求。
等文件數據上傳完,OSS給用戶Response前,OSS會根據用戶的回調設置,請求用戶的伺服器。如果應用伺服器返回成功,那麼就返回用戶成功,如果應用伺服器返回失敗,那麼OSS也返回給用戶失敗。這樣確保了用戶上傳成功,應用伺服器已經收到通知了。
4、應用伺服器給OSS返回。
5、OSS將應用伺服器返回的內容返回給用戶。
6、啟動後台同步引擎執行oss到odps的數據同步。
7、同步實時進度返回返回給應用伺服器,同時展示給用戶。

⑨ 怎麼把我做的jsp網頁發布到雲伺服器上

買個阿里雲伺服器或者騰訊雲伺服器
然後遠程進去
跟在本地搭建環境一樣
搭建好後直接用它們提供的外網IP訪問即可
如果想使用域名訪問的話
設置一些域名解析
這個在阿里雲或者騰訊雲的個人中心裏面有相應的菜單

⑩ jsp中圖片上傳到伺服器,是一個怎麼樣的流程

所謂別的伺服器和自己的伺服器其實是相對的,你把web應用中普通的應用和上傳都在一個伺服器實現那就是你說的自己的伺服器,如果你把上傳功能單獨成一個獨立的系統部署在其他伺服器,對外提供服務的介面,那麼客戶端調用這樣的上傳服務後就是上傳到你所說的別的伺服器啦