1. 程式人生 > >【xbin-store】基於springboot的分散式B2C電商開源專案

【xbin-store】基於springboot的分散式B2C電商開源專案

原文地址:https://blog.csdn.net/g290095142/article/details/79105219

致敬原作者

CSDN下載地址

核心技術(後臺)

  • 使用Spring Boot 構建整個專案 去除 XML 配置
  • Maven構建專案
  • Jenkins作為持續整合
  • 採用Dubbox作為RPC框架
  • kryo序列化
  • 使用 Apollo 配置中心(目前這個有問題,導致專案不能啟動,我已經全部註釋)
  • 使用Spring+Spring MVC+MyBatisSSM框架
  • 資料庫使用MySQLRedis
  • 頁面引擎採用 Beetl
  • 網頁採用freemarker生成靜態化頁面
  • 儲存採用FastDFS儲存圖片等檔案
  • 採用Solr實現搜尋服務
  • Swagger2 生成 RESTful Apis文件
  • 負載均衡使用Nginxkeepalived實現高可用
  • 採用Spring Scheduled做任務排程
  • 訊息中介軟體採用RabbitMQ
  • 在分散式事務上則採用了TCC解決訂單支付方面時效性要求性高的分散式事務,可靠的訊息服務則來解決如會計記錄等時效性要求低的分散式事務.

核心技術(前臺)

  • AdminLTE整合太多Js這裡就不一一列舉了

專案結構圖

  • 列表內容

目前的開發進度

  • 列表內容

先看效果圖

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

執行環境

  • jdk1.8+tomcat+mysql+maven+idea
  • 原始碼目錄結構,我使用的idea直接匯入,匯入正確的結構,會出現各種jar包問題,我直接把本地的倉庫全部上傳了,maven本地倉庫下載連結:
    https://pan.baidu.com/s/1o9Tn3HC
    密碼:iu2a 直接覆蓋本地的.m2下的檔案即可
  • 註釋掉裡面所有關於私服的配置,阿里雲映象的保留,只註釋私服
    這裡寫圖片描述
  • 使用 Apollo 配置中心,關於Apollo自行百度,如果使用這個配置會一直報一個關於com/google/guava,不用管他,把所有的@EnableApolloConfig全部註釋掉
    這裡寫圖片描述
  • 此時專案編譯應該不會出現紅線錯誤,如果有還是存在,建議更新下maven索引,會有點長,等他更新完,重啟idea
    這裡寫圖片描述
  • 如果出現spring-boot-starter-druid,doubbox,redis找不到的情況,建議直接使用idea匯入原始碼,install到本地倉庫
    這裡寫圖片描述
  • 關於虛擬機器的搭建,為了方便測試,我在虛擬機器上的Windows上搭建了zookeeper+dobbuo+redis+jdk1.8+tomcat8的環境,使用本地的mysql,fastdfs不影響程式執行沒有搭建,直接使用VMware Fusion 匯入即可使用,映象下載地址
  • 啟動zookeeper,在啟動tomcat,redis,直接輸入,啟動順序一定是先zookeeper在tomcat,http://127.0.0.1:8080/dubbo-admin-2.5.5/會要一個填寫賬號密碼的彈窗,預設賬號密碼是root/root,我虛擬機器的執行情況
    這裡寫圖片描述
  • 修改專案中的所有的yml檔案,有兩個要注意的地方,一是zookeeper的註冊地址,而是doubbo的地址,zookeeper寫虛擬機器的地址,埠不用變,doubbo直接註釋掉或者填寫本機的IP,如果出現IP問題,百度VMware固定IP的設定
    這裡寫圖片描述
  • 關於druid密碼加密的問題,我即是加密一樣出現一個密碼未加密的錯誤,建議是直接改為false,然後填寫未加密的密碼
    這裡寫圖片描述
  • 接下里開始編譯專案,使用install -DskipTests
    這裡寫圖片描述
  • 正確的編譯截圖,如果還有問題,一般都是jar的問題
    這裡寫圖片描述

專案執行

  • 啟動XbinStoreServiceRedisApplication
  • 啟動XbinStoreServiceNotifyApplication
  • 啟動XbinStoreServiceSSOApplication
  • 啟動XbinStoreWebSSOApplication
  • 整個專案所有的static檔案目錄不能出現任何錯誤,js.css這些一樣不行,全部啟動成功,輸入localhost:8104/login就可以看到登陸頁面
  • 關於後臺登陸密碼的問題,作者使用DigestUtils.md5DigestAsHex去加密密碼,我沒有使用fastdfs所以直接生成的密碼
    這裡寫圖片描述

本專案最終實現的目標 點我檢視最後完成效果
另外需要學習資料的加我V,本人做Java,一起學習交流的朋友可以加我V,相互學習
這裡寫圖片描述