ZKMall商城開源本地部署指南

1. 開發環境配置

以下是開發工具的最低版本要求。在繼續之前,請務必安裝所有必需的依賴項。

工具版本
JDK17
MySQL5.7.3+
Redis5.0+
Maven3.9.5+
NodeJS20.18.0+
1.1 安裝資源

如需詳細的安裝指南,您可以參考以下教程:

  • JDK: 菜鳥教程 Java 環境搭建
  • MySQL: 菜鳥教程 MySQL 安裝
  • Maven: 菜鳥教程 Maven 安裝
  • Redis: 菜鳥教程 Redis 安裝
  • Git: 菜鳥教程 Git 安裝與設置
  • NodeJS: 菜鳥教程 NodeJS 安裝

安裝完成后,根據需要配置并啟動 Redis 服務。

拉取項目

  • zkmall-b2b2c:提供小程序/后臺 Vue 連接所需的 API 接口。
  • 后臺接口 :https://gitee.com/zkmall/b2b2c

2. 后端API項目 (zkmall-b2b2c)

zkmall-b2b2c 項目提供小程序/后臺 Vue 連接所需的 API 接口。

  • 倉庫地址: https://gitee.com/zkmall/b2b2c
2.1 數據庫配置與導入
2.1.1 MySQL 配置

導入數據庫之前,請修改您的 my.cnf 配置文件(MySQL 5.7.3+ 版本需要配置):

[mysqld]
# 默認使用“mysql_native_password”插件認證
# 如果使用的是mysql 8.0 需要設置 mysql_native_password,不然有些工具連不上
default_authentication_plugin=mysql_native_password
# 關閉 only_full_group_by
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

修改完成后,重啟 MySQL 服務。

2.1.2 數據庫導入

數據庫的 SQL 文件請聯系管理員獲取。

2.1.3 應用配置

根據各個模塊的 application.yml 文件以配置數據庫連接及其他設置。

在這里插入圖片描述

默認application-xx-open.yml(商家端同理)
在這里插入圖片描述

2.1.4 XXL-JOB

項目目前使用的定時任務框架是 xxl-job

在這里插入圖片描述

2.2 Lombok 插件安裝

Lombok 是一在 Java 開發過程中為了簡化冗余和樣板式代碼(如 gettersetter)而出現的插件。項目中使用了這個插件,您需要安裝該插件以便項目正常啟動。

  • 安裝指南 (IntelliJ IDEA): IntelliJ IDEA 下使用 Lombok
2.3 啟動后端項目
  1. 啟動 Redis: 確保 Redis 正在運行,通常在 6379 端口。
  2. 啟動 MySQL: 確保您的 MySQL 服務已啟動。
  3. 啟動 xxl-job-admin: 啟動 xxl-job 定時任務(可選)。
  4. 啟動項目模塊:
    • CereshopBusinessApplication: 啟動商家端后臺接口。
    • CereshopAppApplication: 啟動項目前端接口。
    • CereshopAdminApplication: 啟動項目平臺端前端接口。

3. 前端項目

前端由三個獨立的 Vue3 和 uni-app 項目組成。

  • b2b2c-admin: 平臺管理員使用的前端項目 (Vue3)。
    • 倉庫地址: https://gitee.com/zkmall/b2b2c-admin
  • b2b2c-merchant: 商戶后臺管理員使用的前端項目 (Vue3)。
    • 倉庫地址: https://gitee.com/zkmall/b2b2c-merchant
  • b2b2c-uniapp: H5/小程序前端項目 (uni-app)。
    • 倉庫地址: https://gitee.com/zkmall/b2b2c-uniapp
3.1 安裝依賴

在您的終端中,進入每個前端項目的根目錄,并運行以下命令安裝依賴:

npm install
3.2 配置后端連接

建議使用 WebStorm 或 VS Code 進行前端開發。

修改每個前端項目中的 .env.development 文件以連接您的后端 API。

b2b2c-merchant 的示例配置(平臺端和 Uni-app 類似):

假設您的 Java 后端運行在 http://192.168.111.1:9004。您可以通過在命令行中輸入 ipconfig 來找到您的本地 IP 地址。端口 9004 只是一個示例,應與您的 Java 項目 application.yml 中配置的端口一致。

在這里插入圖片描述

# 如需添加更多環境變量,請以 VITE_APP_ 開頭聲明
# 在代碼中使用 import.meta.env.VITE_APP_XXX 獲取指定變量# 環境配置標識
NODE_ENV = 'development'# 統一接口域名
VITE_BASE_URL = 'http://192.168.111.1:9004'
3.3 運行前端項目

配置好后端連接后,您可以啟動前端開發服務器。

npm run dev
3.4 Uni-app H5 端口配置

在這里插入圖片描述

對于 b2b2c-uniapp 項目,您可以在 manifest.json 中配置 H5 開發服務器的端口:

"h5": {"devServer": {"port": 8080}
}

4. 其它

更換文件上傳方式(已商家端為例)

配置阿里云oss密鑰

在這里插入圖片描述

更換依賴
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/91271.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/91271.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/91271.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

《使用Qt Quick從零構建AI螺絲瑕疵檢測系統》——8. AI賦能(下):在Qt中部署YOLOv8模型

目錄一、概述1.1 背景介紹:從“訓練”到“部署”1.2 學習目標二、在C中集成ONNX模型2.1 準備模型文件2.2 修改Backend以加載和運行模型三、關鍵一步:輸出結果的后處理四、運行與驗證五、總結與展望一、概述 1.1 背景介紹:從“訓練”到“部署…

【動態規劃 | 多狀態問題】動態規劃求解多狀態問題

算法相關知識點可以通過點擊以下鏈接進行學習一起加油!斐波那契數列模型路徑問題多狀態問題通常涉及多個決策點和狀態轉換,解決起來復雜且計算量大。動態規劃作為一種強大的算法工具,能夠通過將問題分解為子問題并逐步求解,顯著提…

【HTTP】防XSS+SQL注入:自定義HttpMessageConverter過濾鏈深度解決方案

防XSSSQL注入:自定義HttpMessageConverter過濾鏈深度解決方案一、安全威脅模型分析二、自定義HttpMessageConverter架構設計2.1 技術棧組成三、完整實現代碼3.1 安全過濾工具類3.2 自定義HttpMessageConverter3.3 Spring安全配置四、深度防御增強方案4.1 SQL注入參數…

學習游戲制作記錄(凍結敵人時間與黑洞技能)7.30

1.實現劍擊中敵人時凍結敵人時間Enemy腳本:public float defaultMoveSpeed;//默認速度defaultMoveSpeed moveSpeed;//Awake()中設置public virtual void FreezeTime(bool _timeFreeze)//凍結設置函數{if (_timeFreeze){moveSpeed 0;anim.sp…

【數據結構】真題 2016

待補充已知表頭元素為c的單鏈表在內存中的存儲狀態如下表所示地址元素鏈接地址1000Ha1010H1004Hb100CH1008Hc1000H100CHdNULL1010He1004H1014H現將f存放于1014H處并插入到單鏈表中,若f在邏輯上位于a和e之間,則a, e, f的“鏈接地址”依次是( &…

雙線串行的 “跨界對話”:I2C 與 MDIO 的異同解析

在電子系統設計中,串行總線憑借其精簡的信號線數量和靈活的拓撲結構,成為芯片間通信的主流選擇。I2C(Inter-Integrated Circuit)和 MDIO(Management Data Input/Output)作為兩種典型的雙線串行總線,雖同屬低速信號范疇,卻在各自的應用領域扮演著不可替代的角色。本文將…

算法精講:二分查找(二)—— 變形技巧

🎯 算法精講:二分查找(二)—— 變形技巧 🔍 友情提示::本小節含高能代碼片段 🥤 閱讀前請確保已掌握基礎二分原理與實現代碼片段可能包含不同程度的變形,請根據實際情況選…

兩個程序配合實現了基于共享內存和信號量的進程間通信,具體說明如下:

第一個程序&#xff1a;共享內存讀取程序&#xff08;消費者&#xff09;該程序作為消費者&#xff0c;從共享內存中讀取數據&#xff0c;通過信號量保證只有當生產者寫入數據后才能讀取。/*4 - 讀共享內存*/ #include<stdio.h> // 標準輸入輸出庫 #inc…

JeecgBoot(1):前后臺環境搭建

1 項目介紹 JeecgBoot 是一款基于 Java 的 AI 低代碼平臺&#xff0c;它采用了 SpringBoot、SpringCloud、Ant Design Vue3、Mybatis 等技術棧&#xff0c;并集成了代碼生成器、AI 對話助手、AI 建表、AI 寫文章等功能。JeecgBoot 的設計宗旨是實現簡單功能零代碼開發&#xf…

Nestjs框架: 關于 OOP / FP / FRP 編程

概述 在軟件開發過程中&#xff0c;不同的編程范式為我們提供了多樣化的思維方式與實現路徑它們不僅影響著代碼的結構和邏輯組織方式&#xff0c;也深刻影響著項目的可維護性、可擴展性以及團隊協作效率 什么是 OOP、FP 和 FRP&#xff1f;首先從三個術語的含義入手 1 &#xf…

elememtor 添加分頁功能

各位看官好&#xff0c;最近在忙著使用elementor搭建自己的網站&#xff0c;由于我不是專業的程序員和前端&#xff0c;又沒有很多錢去找外包公司實現自己的設計&#xff0c;所以選擇了elementor. 總的來說這是一個不錯的wordpress 插件&#xff0c;也讓我們這種非專業的網站設…

關于“PromptPilot” 之2 -目標系統:Prompt構造器

目標系統&#xff1a;Prompt構造器想法首先&#xff0c;在抽象層對PromptPilot進行封裝給出提示詞形成過程的全部環節。然后&#xff0c;在 形成一套確定的提示詞后再為 小規模試點方案生成一整套開發工具并配套集成開發環境和指南。最后&#xff0c;在小規模試點成功后進行拓展…

短劇小程序系統開發:重塑影視內容消費格局

在數字化浪潮的推動下&#xff0c;影視內容消費正經歷著深刻的變革。短劇小程序系統開發作為這一變革的重要力量&#xff0c;正在重塑影視內容消費的格局&#xff0c;為用戶帶來更加個性化、便捷化的觀影體驗。傳統影視內容消費往往受到時間和空間的限制&#xff0c;用戶需要前…

一文掌握最新版本Monocle3單細胞軌跡(擬時序)分析

許多大佬的軟件想要構建一個大而美的生態&#xff0c;從 monocle2 開始就能做單細胞的質控、降維、分群、注釋這一系列的分析&#xff0c;但不幸的是我們只知道 monocle 系列還是主要做擬時序分析&#xff0c;一方面是因為 Seurat 有先發優勢&#xff0c;出名要趁早&#xff0c…

spark入門-helloword

我們學習編程語言的時候&#xff0c;第一個程序就是打印一下 “hello world” &#xff0c;對于大數據領域的第一個任務則是wordcount。那我們就開始我們的第一個spark任務吧&#xff01; 下載spark 官方下載地址&#xff1a;Apache Download Mirrors 下載完畢以后&#xff0c…

雷達系統設計學習:自制6GHz FMCW Radar

國外大神自制6GHZ FMCW Radar開源項目: https://github.com/Ttl/fmcw3 引言 之前我做過一個簡單的調頻連續波&#xff08;FMCW&#xff09;雷達&#xff0c;能夠探測到100米范圍內人體大小的物體。雖然它確實能用&#xff0c;但由于預算有限&#xff0c;還有很大的改進空間。 …

系統選擇菜單(ubuntu grub)介紹

好的&#xff0c;我們來詳細解釋一下什么是Ubuntu的GRUB菜單。 簡單來說&#xff0c;GRUB菜單是您電腦啟動時看到的第一個交互界面&#xff0c;它就像一個“系統選擇”菜單&#xff0c;讓您決定接下來要啟動哪個操作系統或進入哪種模式。詳細解釋 1. GRUB是什么&#xff1f; GR…

方案C,version2

實現一個簡單的Helloworld網頁,并通過GitHub Actions自動構建并推送到公開倉庫的gh-pages分支。同時,使用PAT進行認證,確保源碼在私有倉庫中,構建后的靜態文件在公開倉庫中。 重新設計deploy.yml內容如下(針對純靜態文件,無需構建過程): 步驟: 檢出私有倉庫源碼。 由于…

R 語言科研繪圖 --- 其他繪圖-匯總1

在發表科研論文的過程中&#xff0c;科研繪圖是必不可少的&#xff0c;一張好看的圖形會是文章很大的加分項。 為了便于使用&#xff0c;本系列文章介紹的所有繪圖都已收錄到了 sciRplot 項目中&#xff0c;獲取方式&#xff1a; R 語言科研繪圖模板 --- sciRplothttps://mp.…

webpack 原理及使用

【點贊收藏加關注,前端技術不迷路~】 一、webpack基礎 1.核心概念 1)entry:定義入口,webpack構建的第一步 module.exports ={entry:./src/xxx.js } 2)output:出口(輸出) 3)loader:模塊加載器,用戶將模塊的原內容按照需求加載成新內容 比如文本加載器raw-loade…