1. 程式人生 > >基於Spring Boot的“課程設計”的設計與實現

基於Spring Boot的“課程設計”的設計與實現

這是一個集電影,音樂和書籍於一體的Java web應用

Java 1.8

框架:使用Spring Boot 整合Spring,Spring MVC,MyBatis(前期),Spring Data(後期)

資料庫:MySQL 5.6

快取:Redis 4.0

版本控制:Maven 3.5

頁面解析框架:Thymeleaf

負載均衡:Nginx - 埠80

伺服器:Tomcat 埠8080和8181(可以使用單個tomcat)

PS:音樂來源-網易雲;電影來源-豆瓣、貓眼;書籍來源-豆瓣

==================================================

專案結構
com.wsk.movie
    aspect:切面應用
    bean:回顯的實體類
        celebrity:json影人條目資訊
        maoyan:貓眼
            cinema:json單個電影院資訊
            cinemas:json多個電影院資訊
            movie:json電影資訊
    config:spring啟動載入配置
    controller:連結控制
        webSocket:websocket相關配置和實現
    dao:Mybatis介面
    error:自定義異常處理
    music:網易雲音樂
        bean:網易雲音樂json解析類
        entity:資料庫實體類
        service:操作資料庫
        thread:執行緒相關
    pojo:電影相關的資料庫實體
    redis:redis操作類
        impl:介面的實現
    service:電影相關的服務操作
        impl:介面的實現
    session:session存活時間配置
    springdata:網易雲音樂spring data操作
        entity:網易雲音樂的資料庫實體類
    task:自定義的定時器
        entity:資料庫實體類
        runnable:任務
        service:資料庫相關操作
        tool:工具類
    token:token生成器
    tool:工具類
        bean:百度圖片識別json結果
    write:檔案讀寫操作
 resources
    mapping:mybatis相關的xml檔案
    static:靜態資原始檔
        css:樣式
        image:本地圖片
        js:JAVASCRIPT
    templates:頁面
        forget:忘記密碼
        hot:熱門電影
        information:個人相關資訊詳情
        movie:電影相關資訊
        registered:註冊
        setting:設定

1. 系統結構

這裡寫圖片描述

2. 業務流程

客戶端

這裡寫圖片描述

管理員

這裡寫圖片描述

4. 資料庫

(1) 資料庫表彙總
資料庫表彙總

名稱 表名 註釋
管理員操作記錄表 adminaction 記錄管理員操作
管理員資訊表 admininformation 記錄管理員資訊
書籍表 book 記錄書籍、圖書
戶收藏表 collectioncritic 記錄使用者收藏的資訊
說說評論表 commentcritic 記錄說說的評論
舉報資訊表 critic_report 記錄舉報資訊
點贊資訊表 goodcritic 記錄說說的點贊情況
積分來源表 integralsource 記錄積分的來源
通訊資訊表 message 記錄使用者之間的通訊
電影名稱表 moviename 記錄電影名
好友表 myfriends 記錄使用者之間的好友關係
任務表 mytask 記錄後臺定時任務
任務錯誤資訊表 mytaskerror 記錄後臺任務錯誤資訊
任務日誌表 mytasklog 記錄後臺任務執行情況
說說表 publishcritic 記錄使用者釋出的說說
使用者資訊表 userinformation 記錄使用者的資訊
使用者信譽積分表 userintegral 記錄使用者的信譽積分
使用者等級表 userlevel 記錄使用者的等級
使用者密碼錶 userpassword 記錄使用者的密碼
使用者二維碼錶 userqrcode 記錄使用者的二維碼
音樂專輯表 wangyialbum 記錄音樂專輯
音樂資訊表 wangyimusic 記錄音樂資訊
音樂歌手錶 wangyisinger 記錄歌手資訊

5. 部分流程圖

5.1 使用者登入

這裡寫圖片描述

5.2 發表說說

這裡寫圖片描述

5.3 欣賞電影,聆聽音樂,閱讀書籍

這裡寫圖片描述

5.4 使用者資訊互動

這裡寫圖片描述

5.5 管理管理使用者,說說和舉報稽核

這裡寫圖片描述

6 具體實現細節

6.1 專案技術架構
6.2 登入介面的實現

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

6.3 首頁的實現

這裡寫圖片描述

圖17 首頁介面

6.4 熱門說說

這裡寫圖片描述

圖18 熱門說說

6.5 使用者之間的通訊

這裡寫圖片描述
圖19 使用者通訊

6.6 使用者個人中心設定

這裡寫圖片描述
圖20 個人設定中心

6.7 個人主頁

這裡寫圖片描述
圖21 個人介面

6.8 我的說說,評論,收藏,點贊

這裡寫圖片描述

圖22我的說說

這裡寫圖片描述
圖23 我的評論

這裡寫圖片描述

圖24 我的收藏

這裡寫圖片描述
圖25 我的點贊

6.9 說說評論

這裡寫圖片描述
圖26 評論介面

6.10 搜尋

這裡寫圖片描述
圖27 搜尋

這裡寫圖片描述

圖28 電影搜尋結果
這裡寫圖片描述
圖29 電影詳情

這裡寫圖片描述

圖30 音樂搜尋
這裡寫圖片描述

圖31 圖書搜尋

6.11 音樂系統

這裡寫圖片描述
圖32 熱門音樂

6.12 圖書系統

這裡寫圖片描述
圖33 圖書推薦
這裡寫圖片描述
圖34 圖書詳細資訊

6.13 檢視正在上映的電影

這裡寫圖片描述
圖35 熱映電影詳情
這裡寫圖片描述
圖36 熱映電影評論

7 備註

首次啟動專案

  1. win系統安裝Java 1.8 , IDEA軟體,MySQL資料庫,redis,Nginx。
  2. 開啟MySQL,執行sql檔案,將資料匯入到MySQL中。
  3. 將專案匯入到IDEA中,構建為MAVEN專案。
  4. 配置Nginx檔案,使其負載均衡。
  5. 待專案構建完成後,執行redis和Nginx(或者跳過Nginx)。
  6. 修改resource檔案中的application.properties,配置其中的資料庫資訊
  7. 修改com.wsk.movie.email.Send檔案中的使用者賬號和密碼資訊。
  8. 由於使用了百度提供的圖片識別功能,所以需要修改com.wsk.movie.tool.AuthService中百度提供的clientId和clientSecret(或者直接註釋掉該類)
  9. 將image.rar檔案解壓到D:/image,這個檔案是存放圖片和敏感詞的重要檔案。
  10. 執行com.wsk.movie.MovieApplication的main方法。
  11. 訪問localhost