基於前後端分離+SpringBoot+BootStrap、Vue.js、JQuery+JPA+Redis的天貓整站說明

天貓整站SpringBoot

一、項目介紹和演示

SPRINGBOOT天貓整站,基於 前後端分離思想, 由於該商城高併發的特點,後端框架便使用了方便維護的 SpringM
VC
SpringBoot框架,而前端框架則選擇了主流的BootStrapVue.jsJQuery三大前端框架,頁面使用Thymeleaf3渲染。爲了方便校驗登錄訪問控制授權在安全框架方面使⽤了Shiro ,因爲該項目的數據使用JPA 進行DAO操作, 所以在搜索引擎方面使⽤和SpringBoot兼容性高的ElasticSearch搜索引擎。ElasticSearch在SpringBoot上有專門JPA 接口 ElasticsearchRepository 進行DAO操作。最後因爲電商網站的數據在處理過程中,通常在高併發的場景下涉及到了大量的重複讀寫,這樣一來會消耗了很多性能和讀取時間,爲了可以滿足高併發場景下實時的讀取需求,所以緩存⽅⾯⽤了Redis。

項目:https://github.com/Tyler-Ou/tmall_springboot

二、項目結構

1. 項目名稱

項目名稱: tmall_springboot

2. java源代碼包結構

如圖
在這裏插入圖片描述
├─tmall
│ ├─comparator 比較器類 用於搜索結果篩選
│ ├─config 配置器類 用於配置 跨域、 redis、Shiro、頁面攔截

│ ├─entity 實體類
│ │ ├─controller 控制器
│ │ ├─dao 持久層進行DAO操作
│ │ ├─pojo 實體
│ │ ├─service 服務

│ ├─es Elasticsearch持久層API配置類
│ ├─exception 全局異常處理器類
│ ├─interceptor 攔截器類
│ ├─realm shiro-Realm類
│ ├─test 測試類
│ ├─util 工具類

│ ├─web 頁面類
│ │ ├─AdminPageController 後臺頁面控制器
│ │ ├─ForePageController 前端頁面映射控制器
│ │ ├─ForeRestController 前端頁面內容請求控制器

Application 程序主入口

3. 資源包結構

如圖
在這裏插入圖片描述

├─resource 資源目錄
│ ├─public 公共資源
│ │ ├─css 公共CSS
│ │ ├─img 頁面展示用圖片
│ │ ├─js 公共JS
│ ├─templates thymeleaf3對應的模板目錄
│ │ ├─admin 後臺Html展示頁
│ │ ├─fore 前臺Html展示頁
│ │ ├─include 組件頁
│ │ │ ├─admin 後臺組件頁
│ │ │ ├─fore 前臺組件頁
.properties 全局配置文件

三、功能場景

典型場景

  1. 購物車
    立即購買 加入購物車 查看購物車頁面 購物車頁面操作

  2. 訂單狀態流轉
    生成訂單 確認支付 後臺發貨 確認收貨 評價

  3. CRUD
    後臺各種功能

  4. 分頁
    後臺各種功能

  5. 一類產品多屬性配置
    屬性管理

  6. 一款產品多圖片維護
    產品圖片管理

  7. 產品展示
    前臺首頁 前臺產品頁

  8. 搜索查詢-基於elastic search
    搜索

  9. 登錄、註冊 - 基於 shiro
    註冊 登錄 退出

  10. 登錄驗證 - 基於 shiro
    登錄狀態攔截器

  11. 事務管理
    ForeRESTController.對createOrder進行事務管理
    等等 。。。

  12. 緩存處理
    全站數據通過 redis 進行了緩存

四、技術總結

● 後端:Spring SpringMVC、SpringBoot
● 前端:BootStrap、Vue.js、JQuery、Thymeleaf3
● 安全:Shiroㅤㅤ ● 搜索引擎:elastic search
● 緩存:Redisㅤㅤ● 數據:JPA
● 倉庫管理:Gitㅤ ● 集成環境:idea
● 服務器容器:docker-mysql
● elastic search、Redis文件及其對應的可視化工具均在 在tool夾文件內

五、項目地址

https://github.com/Tyler-Ou/tmall_springboot

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章