




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第SpringBoot+thymeleaf實現(xiàn)讀取視頻列表并播放視頻功能目錄效果實現(xiàn)過程后端程序示例前端程序示例通過讀取數(shù)據庫video表獲取當前視頻的視頻名、視頻地址,展示至前端頁面videorecord.html,通過點擊播放按鈕獲取數(shù)據id進而得到所選視頻地址,跳轉播放視頻顯示頁videoshow.html,播放所選視頻。當然本案例只是為了展示主要的一些功能,其他比如跳轉、頁面布局美化等可以自行進行更改。
效果
Springboot播放視頻
實現(xiàn)過程
后端程序示例
1.Controller層示例
返回數(shù)據庫數(shù)據時,使用了pagehelp當中的PageInfo,為了后期擴展分頁功能,正常寫法返回值類型應為實體類Video.
packagecom.dvms.controller;
*文件名:VideoController
*創(chuàng)建者:CJW
*創(chuàng)建時間:2025/4/1416:40
*描述:TODO
importcom.dvms.entity.Video;
importcom.dvms.service.ParamoduleService;
importcom.github.pagehelper.PageInfo;
importorg.springframework.beans.factory.annotation.Autowired;
importorg.springframework.stereotype.Controller;
importorg.springframework.ui.Model;
importorg.springframework.web.bind.annotation.RequestMapping;
@Controller
publicclassVideoController{
@Autowired
privateParamoduleServiceparamoduleService;
//查出記錄
@RequestMapping("/angle/findvideoRecord")
publicStringfindvideorecords(Modelmodel){
System.out.println(paramoduleService.findvideorecord());
PageInfoVideovideoRecord=newPageInfo(paramoduleService.findvideorecord());
model.addAttribute("videorecord",videoRecord);
return"angle/videorecord";
//查出視頻地址
@RequestMapping("/angle/findvideo")
publicStringfindvideo(Stringid,Stringfilenamev,Modelmodel){
System.out.println(id);
Stringvideopath=paramoduleService.findvideo(id);
System.out.println(videopath);
model.addAttribute("videourl",videopath);
model.addAttribute("videoname",filenamev);
return"angle/videoshow";
2.Service層
packagecom.dvms.service;
importcom.dvms.entity.Record;
importcom.dvms.entity.Video;
importjava.util.List;
importjava.util.Map;
*文件名:ParamoduleService
*創(chuàng)建者:CJW
*創(chuàng)建時間:2025/1/1510:54
*描述:TODO
publicinterfaceParamoduleService{
Stringfindvideo(Stringid);
ListVideofindvideorecord();
3.ServiceImpl層
packagecom.dvms.service.Impl;
importcom.dvms.dao.ParamoduleDao;
importcom.dvms.entity.Record;
importcom.dvms.entity.Video;
importcom.dvms.service.ParamoduleService;
importorg.springframework.beans.factory.annotation.Autowired;
importorg.springframework.stereotype.Service;
importjava.util.List;
importjava.util.Map;
*文件名:ParamoduleServiceImpl
*創(chuàng)建者:CJW
*創(chuàng)建時間:2025/1/1510:55
*描述:TODO
@Service
publicclassParamoduleServiceImplimplementsParamoduleService{
@Autowired
privateParamoduleDaoparamoduleDao;
//查出視頻文件地址
@Override
publicStringfindvideo(Stringid){
returnparamoduleDao.findvideo(id);
//查出視頻記錄
@Override
publicListVideofindvideorecord(){
returnparamoduleDao.findvideorecord();
4.dao(mapper)層
packagecom.dvms.dao;
importcom.dvms.entity.Record;
importcom.dvms.entity.Video;
importorg.springframework.stereotype.Repository;
importjava.util.List;
importjava.util.Map;
*文件名:ParamoduleDao
*創(chuàng)建者:CJW
*創(chuàng)建時間:2025/1/1510:52
*描述:TODO
@Repository
publicinterfaceParamoduleDao{
Stringfindvideo(Stringid);
ListVideofindvideorecord();
4.entity(pojo)層
packagecom.dvms.entity;
*文件名:Video
*創(chuàng)建者:CJW
*創(chuàng)建時間:2025/4/1416:17
*描述:TODO
importlombok.AllArgsConstructor;
importlombok.Data;
importlombok.NoArgsConstructor;
importlombok.ToString;
importlombok.experimental.Accessors;
@Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain=true)//鏈式調用
publicclassVideo{
privateStringid;
privateStringfilename;
privateStringfilepath;
5.daoMapper.xml
xmlversion="1.0"encoding="UTF-8"
!DOCTYPEmapper
PUBLIC"-////DTDMapper3.0//EN"
"/dtd/mybatis-3-mapper.dtd"
mappernamespace="com.dvms.dao.ParamoduleDao"
!--查詢存在視頻--
selectid="findvideo"resultType="String"
selectfilepathfromvideowhereid=#{id}
/select
!--查詢存在視頻記錄--
selectid="findvideorecord"resultType="Video"
selectid,filename,filepathfromvideo
/select
/mapper
6.video數(shù)據庫表結構
前端程序示例
前端需引入thymeleaf、bootstrap等
1.videorecord.html
div
!--MAINCONTENT--
div
div
h3視頻管理/h3
div
div
!--BASICTABLE--
div
div
divh3視頻記錄/h3/div
!--hr--
/div
div
table
tdhidden
/td
視頻文件名
/td
/td
/tr
trth:class="${rowstate.odd}'row1':'row2'"th:each="video,rowstate:${videorecord.list}"
tdhidden
spanth:text="${video.id}"/span
/td
spanth:text="${video.filename}"/span
/td
atype="button"th:href="@{/angle/findvideo(id=${video.id},filenamev=${video.filename})}"rel="externalnofollow"播放/anbsp;
atype="button"th:href="@{/angle/findvideo(id=${video.id})}"rel="externalnofollow"下載/anbsp;
/td
/tr
/table
div
/div
/div
/div
!--ENDCONDENSEDTABLE--
/div
/div
/div
/div
!--ENDMAINCONTENT--
/div
2.videoshow.html
div
!--MAINCONTENT--
div
div
h3播放視頻示例/h3
div
div
div
aspan當前播放視頻:/spanspanth:text="${videoname}"/span/a
/div
/div
/div
div
!--BASICTABLE--
div
div
div
table
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
/td
!--imgth:src="${imageurl}"--
videoalign="center"width="800"height="550"controls
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高端制造業(yè)廠房租賃服務合同模板
- 車輛借用合同車輛使用記錄及報告協(xié)議
- 財務部門承包財務管理合同協(xié)議
- 幼師有哲理又幽默的演講稿(19篇)
- 業(yè)務合作合同協(xié)議書
- 合作推廣美食合同書(16篇)
- 業(yè)務委托代理合同協(xié)議書
- 行政組織理論的領導力發(fā)展試題及答案
- 私人荒地轉讓合同協(xié)議書
- 2025年航空發(fā)動機維修技術升級路徑與成本控制案例分析報告
- 2025年北京市通州區(qū)九年級初三一模英語試卷(含答案)
- 2024北京海淀區(qū)四年級(下)期末數(shù)學試題及答案
- 農村蓋房施工合同樣本
- 餐飲業(yè)消防安全風險評估計劃
- 《煙氣脫硫脫硝技術》脫硫考試試卷試題答案
- 醫(yī)藥倫理相關知識試題及答案
- 2025年中考物理模擬猜題卷3(含答案)
- 第二章城市軌道交通屏蔽門門體結構課件
- 記錄及臺賬填寫規(guī)范
- 《國家綜合性消防救援隊伍隊列條令(試行)》課件
- 學校食堂出入庫制度
評論
0/150
提交評論