李小武,周湘龍
(湖南科技學(xué)院電子與信息工程學(xué)院,湖南 永州 425199)
基于Java EE的視頻互動(dòng)交友網(wǎng)站設(shè)計(jì)*
李小武,周湘龍
(湖南科技學(xué)院電子與信息工程學(xué)院,湖南 永州 425199)
該項(xiàng)目是基于java,使用流行的開發(fā)設(shè)計(jì)框架制作而成的一個(gè)視頻播放網(wǎng)站App,運(yùn)用了流媒體播放技術(shù)和大文件上傳技術(shù)等,為視頻資源和播放業(yè)務(wù)提供了良好的管理手段。該系統(tǒng)作為BS項(xiàng)目的優(yōu)點(diǎn)是不用安裝APP,有瀏覽器就能使用。該網(wǎng)站的主要功能有,視頻點(diǎn)播、直播、站內(nèi)搜索、新聞瀏覽、用戶留言評(píng)論、在線互動(dòng)、后臺(tái)管理等。在設(shè)計(jì)上遵循MVC設(shè)計(jì)模式,具有良好的可擴(kuò)展性和結(jié)構(gòu)性。后臺(tái)管理的獨(dú)立設(shè)計(jì)能夠讓網(wǎng)站維護(hù)人員時(shí)刻保持網(wǎng)站資源的更新和維護(hù)。用戶能夠時(shí)刻的觀看到最新的資源。網(wǎng)站還加入了智能推薦功能,根據(jù)用戶的觀看習(xí)慣來(lái)擬定推薦內(nèi)容,做到每個(gè)用戶都能看到為其推薦的不同的推薦內(nèi)容。
JAVA;網(wǎng)站;視頻;直播
如今,人們對(duì)互聯(lián)網(wǎng)的需求慢慢開始從傳統(tǒng)的被動(dòng)的信息獲取方式轉(zhuǎn)型為多元豐富的自由的獲取方式[1,2]。人們?cè)谏暇W(wǎng)瀏覽咨詢的同時(shí),更多地希望自己能夠切身參與到互聯(lián)網(wǎng)信息構(gòu)建過(guò)程中來(lái),以直播、點(diǎn)播視頻類互動(dòng)網(wǎng)站平臺(tái)的興起,很好地滿足了人們對(duì)于這一需求的渴望,而流媒體播放技術(shù)則是實(shí)現(xiàn)該類網(wǎng)站的關(guān)鍵點(diǎn)[3,4]。流媒體播放,顧名思義,即將視頻音頻等轉(zhuǎn)化為可即時(shí)播放的流媒體,流媒體不依賴整體的特性,讓其可以在觀看過(guò)程中,不需要等待資源的下載完成,緩沖一段即可以播放,大大地優(yōu)化了用戶體驗(yàn)[5-7]。本項(xiàng)目的設(shè)計(jì)過(guò)程中,依賴掌握的java web編程技術(shù)和流媒體播放技術(shù)搭建的一個(gè)視頻播放功能性網(wǎng)站,本設(shè)計(jì)的目的是致力于開發(fā)一個(gè)便于管理和維護(hù),可擴(kuò)展性強(qiáng)的一個(gè)網(wǎng)站體系。
本設(shè)計(jì)在設(shè)計(jì)模式上遵循MVC的設(shè)計(jì)模式,模型層(model)、視圖層(view)、控制層(control)。遵循模塊化設(shè)計(jì)結(jié)構(gòu),主要的功能模塊有:用戶模塊、視頻模塊、直播模塊、新聞模塊、菜單模塊、還有后臺(tái)管理模塊等。用戶模塊中,主要分為用戶登錄和注冊(cè)、用戶管理、用戶交互、業(yè)務(wù)申請(qǐng)等,視頻模塊主要分為視頻播放、發(fā)布和維護(hù)等。
直播模塊分為直播注冊(cè),直播播放等業(yè)務(wù)、菜單模塊即是對(duì)所有模塊的管理。后臺(tái)模塊中可以對(duì)所有的業(yè)務(wù)進(jìn)行管理。整體設(shè)計(jì)框架圖如圖1所示。
圖1 系統(tǒng)框架流程圖
2.1 用戶模塊具體設(shè)計(jì)
首先是登錄注冊(cè),登錄注冊(cè)是在設(shè)計(jì)上用到了一個(gè)控制器User Controler 、JS表單校驗(yàn)。在用戶體驗(yàn)上為了避免賬號(hào)或者密碼輸入錯(cuò)誤導(dǎo)致重新刷新頁(yè)面的問(wèn)題。采用的是AJAX表單提交。后臺(tái)的登錄主要針對(duì)的是管理員。管理員可以對(duì)前臺(tái)的用戶進(jìn)行管理操作。
圖2 用戶模塊總體思路圖
2.2 視頻模塊設(shè)計(jì)
視頻在網(wǎng)站中來(lái)源有兩種。第一是用戶上傳的視頻(需要經(jīng)過(guò)后臺(tái)審核操作),第二是管理員在后臺(tái)上傳的視頻。視頻信息可以在上傳的時(shí)候進(jìn)行維護(hù),也可以由管理員進(jìn)行二次維護(hù)。包括封面,關(guān)聯(lián)資源(要播放的視頻)、視頻分類(菜單)或分組(播放專輯)等其他信息,可以設(shè)置視頻的優(yōu)先級(jí)進(jìn)行排序,優(yōu)先級(jí)決定視頻在前臺(tái)頁(yè)面展示的順序。設(shè)置播放專輯可以在用戶播放某個(gè)視頻的時(shí)候進(jìn)行加載推薦。視頻播放采用Flash 流播放器,可以調(diào)節(jié)進(jìn)度。視頻上傳采用swf大文件上傳插件,支持隊(duì)列上傳、斷點(diǎn)續(xù)傳并且在速度上比普通上傳快。視頻模塊設(shè)計(jì)思路如圖3所示。
圖3 視頻模塊總體思路圖
2.3 直播模塊設(shè)計(jì)
直播用戶通過(guò)上傳視頻流,通過(guò)媒體服務(wù)器的轉(zhuǎn)接,用戶可以通過(guò)訪問(wèn)直播地址來(lái)實(shí)時(shí)收看視頻流。并同時(shí)發(fā)送即時(shí)消息。
采集視頻流:obs直播客戶端攝像頭或桌面。
直播方案:流媒體服務(wù)器:FMS(rtmb流)
播放流:flash 播放器
實(shí)時(shí)彈幕功能:websorket通信。視頻模塊設(shè)計(jì)思路如圖4所示。
2.4 新聞模塊設(shè)計(jì)
新聞的作用是為了推薦網(wǎng)站精彩的內(nèi)容,并通過(guò)鏈接地址來(lái)訪問(wèn)相應(yīng)的資源,并且位置都是在網(wǎng)站比較靠前的位置(優(yōu)先級(jí)較高),以輪播圖的形式展現(xiàn)。
新聞的管理模式如:封面+描述+日期+內(nèi)容+關(guān)聯(lián)資源。其管理權(quán)限只對(duì)管理員開放。類似于消息內(nèi)容發(fā)布系統(tǒng)(CMS)。新聞模塊設(shè)計(jì)思路如圖5所示。
圖4 直播模塊總體思路圖
圖5 視頻模塊總體思路圖
2.5 菜單模塊設(shè)計(jì)
菜單模塊可以說(shuō)是其他模塊的功能的整合,在設(shè)計(jì)上主要就是為了方便對(duì)所有的模塊進(jìn)行整理,另外在前臺(tái)展示的時(shí)候可以根據(jù)相應(yīng)的菜單ID進(jìn)入每個(gè)獨(dú)立功能。
表1 菜單模塊示例
3.1 用戶模塊測(cè)試
用戶模塊,訪問(wèn)主頁(yè)后顯示登錄前臺(tái)登錄窗口(如圖6)。注冊(cè)有效身份后即可使用用戶身份登錄。登錄成功后可對(duì)個(gè)人中心進(jìn)行管理(如圖7)。
圖6 登錄測(cè)試圖
圖7 個(gè)人中心測(cè)試圖
3.2 視頻模塊測(cè)試
在后臺(tái)添加一條視頻數(shù)據(jù),在前臺(tái)找到該條數(shù)據(jù),點(diǎn)擊播放,測(cè)試能正常播放。測(cè)試效果(如圖8)。
圖8 視頻后臺(tái)管理測(cè)試圖
3.3 直播模塊測(cè)試
后臺(tái)添加新直播>>將審核狀態(tài)改為已審核打開直播軟件>>輸入播放流地址>>開始直播點(diǎn)擊首頁(yè)直播>>顯示在線直播間>>進(jìn)入直播間>>開始收看直播。測(cè)試的效果如圖9所示。
圖9 直播測(cè)試圖
3.4 新聞模塊測(cè)試
登錄后臺(tái)管理,添加新聞,管理新聞,將新聞狀態(tài)改為發(fā)布,前臺(tái)首頁(yè)查看該新聞測(cè)試的效果如圖10所示。
3.5 菜單模塊測(cè)試
后臺(tái)管理菜單管理,添加或修改菜單再在前臺(tái)查看新菜單名,點(diǎn)擊菜單進(jìn)入相應(yīng)子菜單頁(yè)面。測(cè)試的效果如圖11所示。
圖10 直播測(cè)試圖
圖11 菜單管理測(cè)試圖
[1] 蔡萬(wàn)景,趙海濤,郭寬.LaTex創(chuàng)作的Web模板系統(tǒng)的研究與實(shí)現(xiàn)[J].科技信息,2010(11):467-468.
[2] 林煜,張燕.基于Java網(wǎng)站內(nèi)容管理的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2010(14):3666-3667.
[3] 賀建洲.基于Java網(wǎng)站內(nèi)容管理的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2016(7):27.
[4] 康曉林,蔣少莉.Java網(wǎng)站設(shè)計(jì)中的工作流的設(shè)計(jì)[J].電子技術(shù)與軟件工程,2014(22):74.
[5] 陳濤,白栩翔.Velocity模板引擎技術(shù)在Java Web中的應(yīng)用[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2011(5):38-40.
[6] 馬景濤,鄭斌,張利益,等.Java Web網(wǎng)站應(yīng)用Matlab問(wèn)題解決方案[J].現(xiàn)代電子技術(shù),2013(6):56-58+62.
[7] 網(wǎng)站登錄Google與網(wǎng)站設(shè)計(jì)[J].計(jì)算機(jī)與網(wǎng)絡(luò),2003(18):35.
A Video-interactive Dating Website Based on Java EE
Li Xiaowu, Zhou Xianglong
(SchoolofElectronicsandInformationEngineering,HunanUniversityofScienceandEngineering,YongzhouHunan425199,China)
The video site App is based on java, and made up of popular development design framework with the use of streaming media playback technology and large file upload technology that provides a good management for the video resources and playback business. The system as a BS project can be used with a browser and without APP installation. The main features of the site are video on demand, live, site search, news browsing, user comments, online interaction and backstage management. The design follows the MVC design pattern with good scalability and structural. The independent design of the backstage management allows the site maintenance staff to keep the website resources updated and maintained at all times and the users can always watch the latest resources. Web site also joins the intelligent recommendation function, according to the user’s viewing habits to develop recommendations, so that each user can see the different recommended content that recommended for them.
JAVA; website; video; live
2017-05-11
湖南省教育廳優(yōu)秀青年項(xiàng)目(17B107);湖南科技學(xué)院重點(diǎn)學(xué)科建設(shè)項(xiàng)目資助(電路與系統(tǒng))
李小武(1979-),男,湖南邵陽(yáng)人,副教授,碩士,主要從事嵌入式系統(tǒng)的研究。
1674- 4578(2017)04- 0052- 03
TP393
A