gpt4 book ai didi

java - 将视频托管在服务器上并在jsp页面上播放

转载 作者:行者123 更新时间:2023-12-01 04:11:38 25 4
gpt4 key购买 nike

我想在我的 jsp 页面上嵌入并播放视频文件。我做了什么,我制作了一个 jsp,并在其上放置了以下标记:

<EMBED SRC="${pageContext.request.contextPath}/home/Hibernate.mp4" WIDTH="200" HEIGHT="100" AUTOPLAY="TRUE" LOOP="true"></EMBED>

但问题是它总是尝试在我的 war 文件中查找视频,即如果我将视频保留在我的 war 文件中,如下文件夹结构/home/Hibernate.mp4 那么只有我可以播放该视频。

但是我需要在我的 jsp 上播放许多视频,因此希望将所有视频保留在我的服务器上的某个位置。

那么我应该怎么做才能玩这些。我应该使用 servlet,然后读取视频字节并将它们放在 out.println...

请帮忙。

最佳答案

你需要一个 servlet 人员。
考虑电影位于服务器上的 /home/movie 路径下。
因此,您需要提供一个 servlet 来打开所需的电影并将其响应给客户端。
例如,客户端请求 http://127.0.0.1:8080/showmov?name=pulse1995.mpg
这里的 /showmov 是一个 servlet,这个 servlet 只是获取请求参数(id)并在电影文件夹中搜索并响应它。

package test;
import java.io.FileInputStream;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/showmov")
public class ShowMovie extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id=request.getParameter("id");
if(id!=null && !id.equals("")){
FileInputStream fis=new FileInputStream("/home/moview/"+id);
response.setContentType("movie/mpeg");//not sure about this mime type
response.setContentLength((int) fis.getChannel().size());
int r;
byte[] buff=new byte[1024];
while((r=fis.read(buff))==buff.length){
response.getOutputStream().write(buff);
}
response.getOutputStream().write(buff,0,r);
response.getOutputStream().flush();
}else{
//maybe show a list
}
}
}

关于java - 将视频托管在服务器上并在jsp页面上播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19872723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com