文章目錄
- 1 開發工具版本
- 2 IDEA環境配置
- 2.1 編碼配置
- 2.2 自動導包設置
- 2.3 提示忽略大小寫
- 2.4 設置 Java 編譯級別
- 3 Maven環境
- 3.1 安裝Maven
- 3.2 配置倉庫
- 3.3 IDEA中配置maven
- 4 配置虛擬機
- 4.1 導入虛擬機
- 4.2 問題
- 5 配置數據庫環境
- 5.1 啟動mysql容器
- 5.2 使用MySQL客戶端連接數據庫
- 5.3 創建 jzo2o-foundations數據庫
- 6 配置Redis環境
- 6.1 啟動redis容器
- 6.2 使用客戶端連接Redis
- 7 配置Nacos
- 7.1 檢查配置
- 7.2 自行安裝
- 8 配置Git環境
- 8.1 安裝Git
- 8.2 創建遠程倉庫
- 8.2.1 jzo2o-foundations
- 8.2.2 jzo2o-api
- 9 創建后端工程
- 9.1 創建jzo2o-framework
- 9.1.1 導入jzo2o-framework工程
- 9.1.2 打包上傳到maven倉庫
- 9.2 創建jzo2o-gateway
- 9.2.1 導入網關工程
- 9.2.2 運行網關工程
- 9.3 創建jzo2o-foundations
- 9.4 創建jzo2o-api
- 9.5 運行jzo2o-foundations
- 9.5.1 配置jzo2o-foundations
- 9.5.2 運行jzo2o-foundations
- 9.6 創建jzo2o-publics
- 9.6.1 導入jzo2o-publics
- 9.6.2 配置OSS
- 9.6.3 配置高德地圖
- 9.6.4 啟動jzo2o-publics
- 10 配置前端環境
- 10.1 編譯前端工程
- 10.1.1 安裝nodejs
- 10.1.2 編譯前端工程
- 10.2 運行前端工程
- 10.2.1 運行前端工程
- 10.2.2 服務類型查詢功能驗證
- 10.2.3 上傳圖功能驗證
- 11 注意點
此項目必須電腦內存為32G以上,否則請擴充內存后再進行學習!
1 開發工具版本
開發工具列表:
2 IDEA環境配置
安裝IDEA,根據下邊的步驟進行配置。
2.1 編碼配置
2.2 自動導包設置
IDEA可以自動優化導入包,但是有多個同名的類調用不同的包,必須自己手動Alt+Enter設置,
下面可以通過設置來進行導包優化。
2.3 提示忽略大小寫
IDEA代碼提示默認是區分大小寫的,設置為提示忽略大小寫,編譯我們后期的開發
2.4 設置 Java 編譯級別
點擊Project,設置SDK為11及Project language level,如下圖:
3 Maven環境
3.1 安裝Maven
下載maven3.8.6版本,下載鏈接如下:
maven3.8.6版本
解壓apache-maven-3.8.6-bin.zip到沒有中文的目錄下。
3.2 配置倉庫
1、解壓課程資料中的maven倉庫下的repository.zip到本地硬盤
2、在Maven的conf目錄中setting.xml文件中配置本地倉庫的地址。
配置中央倉庫位置:
在setting.xml文件中配置阿里云中央倉庫地址。
3.3 IDEA中配置maven
在IDEA中配置maven:進入 File --> Settings --> Build --> Build Tools --> Maven
配置maven安裝目錄、setting.xml及本地倉庫的位置。
4 配置虛擬機
4.1 導入虛擬機
服務器操作系統使用Centos7,導入下發的虛擬機文件,也可以自行安裝Centos7虛擬機。
1、導入虛擬機:
首先安裝VMware-workstation 16.x 或 VMware-workstation 17.x 虛擬機軟件(已安裝vmware軟件的同學不需要重新安裝),可從課程資料“軟件工具”目錄獲取安裝程序(VMwareworkstation16.rar)。
1)設置網絡
點擊 “編輯–》虛擬網絡編輯器”配置網絡地址,地址須與下圖一致。
設置子網IP:192.168.101.0,子網掩碼:255.255.255.0。
2)導入虛擬機
解壓虛擬機文件,進入解壓后的文件架,雙擊"CentOS 7 64 位.vmx" 文件,選擇復制虛擬機。
對此虛擬機的設置建議至少8G內存、8核CPU,硬盤存儲至少40G。
設置完成,啟動虛擬機。
注意:虛擬機的IP地址為192.168.101.68,不用修改IP地址。
虛擬機啟動成功如下界面:
注意:不用點擊進行登錄。
3)遠程連接虛擬機
虛擬機啟動成功,下邊使用ssh客戶端工具(FinalShell)遠程 連接 虛擬機。
打開FinalShell軟件,沒有安裝的可以從課程資料“軟件工具”目錄獲取安裝程序(finalshell_install.exe)。
通過下圖所示建立新連接:
填寫連接信息:
IP地址:192.168.101.68
賬號與密碼為:root/centos
如下圖:
點擊“確定”,創建連接成功,如下圖:
雙擊連接信息,連接成功如下圖:
執行 systemctl start docker 啟動docker。
systemctl start docker
啟動mysql:
docker start mysql
啟動redis:
docker start redis
啟動nacos:
docker start nacos
以上軟件如果已經啟動不用重復啟動。
查詢docker容器:docker ps
如下圖:
虛擬機已經安裝了項目使用的軟件,可通過docker ps -a查詢全部安裝的容器,具體在使用時再進行啟動。
4.2 問題
win11打開.vmx文件報錯:“未能啟動虛擬機”
嘗試解決方法:
\1. 打開虛擬機的存放路徑
\2. 找到.vmx的配置文件
\3. 修改 virtualHW.version改為virtualHW.version = “18”
5 配置數據庫環境
5.1 啟動mysql容器
首先確保Docker容器中的MySQL8已經啟動。
5.2 使用MySQL客戶端連接數據庫
下邊使用Navicat客戶端連接數據庫。
首先創建數據源 ,填寫數據源信息
賬號:root 密碼:mysql
點擊"測試連接" 測試成功
在下發的虛擬機中MySQL數據庫已經包括了項目使用的數據庫。
下邊通過客戶端工具查詢 jzo2o-foundations數據庫的信息。
顯示jzo2o-foundations數據庫,如下圖:
通過上圖可知jzo2o-foundations數據庫總共8張表。
5.3 創建 jzo2o-foundations數據庫
如果沒有使用下發的虛擬機則需要自行創建 jzo2o-foundations數據庫。
首先創建 jzo2o-foundations數據庫:
接下來導入數據:
從課程資料下的“sql腳本”目錄拿到 jzo2o-foundations-init.sql,下邊導入數據:
執行完成, 通過客戶端工具查看jzo2o-foundations數據庫信息,如下圖:
jzo2o-foundations數據庫共8張表。
6 配置Redis環境
6.1 啟動redis容器
首先確保Docker容器中的redis已經啟動,沒有啟動運行docker start redis啟動redis。
6.2 使用客戶端連接Redis
使用redis客戶端程序 Another Redis Desktop Manager連接redis。
配置連接參數:
測試連接成功如下圖:
7 配置Nacos
7.1 檢查配置
啟動nacos容器
訪問Nacos:http://192.168.101.68:8848/nacos/#/login
輸入賬號和密碼點擊登錄。
賬號:nacos
密碼:nacos
登錄成功,在配置列表中找到"家政o2o"的命令空間可以正常查詢到數據說明安裝成功。
到此說明nacos服務可以正常使用。
如果不能正常顯示可重啟nacos,運行下邊的命令:
docker restart nacos
7.2 自行安裝
如果無法正常導入下發的虛擬機下邊說明安裝并配置nacos的步驟。
參考“第三方軟件安裝說明”文檔進行安裝。
安裝nacos后需要創建命名空間并導入nacos的配置文件。
創建命名空間:
命名空間id統一使用 75a593f5-33e6-4c65-b2a0-18c403d20f63
如下圖:
導入配置文件:
選擇課程資料中“nacos配置文件”目錄下的nacos_config_export.zip 進行導入。
導入配置文件后注意修改數據庫的IP地址、Redis的IP地址、RabbitMQ的IP地址等配置信息。
以下是部分配置文件:
數據庫配置文件:shared-mysql.yaml
Redis配置文件:shared-redis-cluster.yaml
XXL-Job配置文件:shared-xxl-job.yaml
MQ配置文件:shared-rabbitmq.yaml
ES配置文件:shared-es.yaml
當前階段需要修改shared-mysql.yaml、shared-redis-cluster.yaml中的IP地址為虛擬機的IP地址。
8 配置Git環境
8.1 安裝Git
在個人電腦安裝Git,使用常用軟件工具目錄中的Git-2.37.3-64-bit.exe。
也可以自行下載,地址:https://git-scm.com/ (windows版本:下載地址)
安裝成功,在右鍵菜單出現Git菜單,如下圖
配置git郵箱:記得改成自己的
git config --global user.name "xxx"
git config --global user.email "xxx@qq.com"
安裝成功在IDEA中配置git的安裝目錄
8.2 創建遠程倉庫
8.2.1 jzo2o-foundations
本項目使用碼云管理Git遠程倉庫,沒有個人賬號的進入碼云官方(https://gitee.com/)注冊賬號。
下邊創建jzo2o-foundations倉庫。
1、新建倉庫
輸出倉庫名稱jzo2o-foundations,選擇“開源”
點擊創建,創建成功
8.2.2 jzo2o-api
參考上邊的方法創建jzo2o-api倉庫。
9 創建后端工程
9.1 創建jzo2o-framework
9.1.1 導入jzo2o-framework工程
jzo2o-framework工程是項目的基礎工程,封裝了項目所需要的一些基礎組件,如:通用的工具類庫、持久層MyBatis-Plus的通用功能抽取等。
從課程資料的源碼目錄解壓jzo2o-framework.zip 到jzo2o-framework目錄,使用IDEA打開jzo2o-framework目錄。
注意配置工程使用的jdk,修改本地maven倉庫等
右鍵jzo2o-parent工程的pom.xml,點擊:Add as Maven Project 將工程變為maven工程,操作后如下圖:
9.1.2 打包上傳到maven倉庫
在開發中一些公共組件會打包jar上傳到公司的maven私服上,其它團隊從私服下載jar包。
jzo2o-framework工程中包括了項目中用到一些封裝組件,最后會發布為jar供其它項目使用,如果要發布到私服則執行mvn deploy命令,如果僅是在本地開發執行mvn install命令發布到本地倉庫即可。
下邊將jzo2o-framework打包后發布到本地倉庫。
打開maven面板如下圖,選擇跳過測試,執行install命令。 打包成功觀察日志如下:
9.2 創建jzo2o-gateway
9.2.1 導入網關工程
jzo2o-gateway工程是項目的網關工程,使用Spring Cloud gateway實現,負責請求攔截、請求路由與負載均衡。
從課程資料的“源碼目錄”解壓jzo2o-gateway.zip到jzo2o-gateway目錄。用idea打開jzo2o-gateway,檢查相應配置,操作步驟同jzo2o-framework工程。
jzo2o-gateway創建完成需要注意開發環境的nacos的ip地址:
9.2.2 運行網關工程
下邊使用IDEA啟動網關工程。
9.3 創建jzo2o-foundations
運營基礎服務工程jzo2o-foundations提供了運營端的接口支持,由于運營基礎服務工程在課堂上我們需要開發維護,使用Git管理代碼。
注意:前邊創建的jzo2o-framework工程和jzo2o-gateway工程代碼我們不用開發,所以不需要使用Git去管理代碼。
下邊我們通過Git去管理jzo2o-foundations,在企業開發中正常的流程如下:
\1. 先克隆倉庫到自己的電腦。
\2. 再編輯工程代碼
\3. 提交代碼到本地倉庫
\4. 將代碼推送到遠程倉庫。
首先從Git倉庫克隆jzo2o-foundations倉庫到代碼目錄。地址就是我們gitee上的地址
輸入git倉庫地址
點擊:Clone
創建成功:
從課程資料下的源碼目錄解壓jzo2o-foundations-01-0.zip工程代碼,拷貝到jzo2o-foundations目錄下。
下邊注意配置工程使用的jdk,選擇jdk11
如果IDEA沒有加載拷貝到jzo2o-foundations目錄下的文件,需要刷新一下工程,加載為maven工程
下邊將代碼提交至倉庫:點擊“提交”:選擇所有文件,并輸入提交注釋,
點擊“提交”。
下邊創建分支
點擊“New Branch”
我們創建的分支是dev_01分支,輸入dev_01:
創建成功如下圖:
下邊推送到遠程倉庫
初次提交提示輸入gitee的賬號和密碼。
提交成功,如下圖:
提交成功后進入gitee查看倉庫,可以查詢剛剛提交的所有代碼。
9.4 創建jzo2o-api
api工程jzo2o-api提供了微服務內部接口的維護,用于微服務之間的遠程調用。
參考jzo2o-foundations工程的創建過程創建jzo2o-api工程:
(jzo2o-api工程的初始代碼見課程資料下源碼目錄:jzo2o-api-01-0.zip)
\1. 首先創建jzo2o-api遠程Git倉庫。
\2. 克隆jzo2o-api到本地電腦
\3. 從課程資料解壓jzo2o-api-01-0.zip并將代碼拷貝到jzo2o-api目錄。
\4. 提交代碼到本地倉庫
\5. 創建分支dev_01
\6. 推送到遠程倉庫
如果idea未能識別到maven工程,則
創建完成如下圖:
和framework一樣需要將api打包jar包上傳到maven倉庫被其它工程依賴。
接下來將API工程打包jar上傳到maven倉庫,如下圖:操作成功:
install不成功就把自己所有的maven倉庫,jdk,jre,runner都檢查一遍,看是不是jdk11
9.5 運行jzo2o-foundations
9.5.1 配置jzo2o-foundations
運行前配置nacos地址:
目前只使用了mysql和redis,需要保證mysql和redis啟動成功,如下圖:
如果沒有使用下發的虛擬機需要進入nacos修改shared-redis-cluster.yaml中redis的地址:
修改shared-mysql.yaml中mysql數據庫的地址。
9.5.2 運行jzo2o-foundations
開發中我們需要以debug方式啟動: 啟動成功:
9.6 創建jzo2o-publics
9.6.1 導入jzo2o-publics
公共服務工程jzo2o-publics提供了地圖定位、上傳圖片、驗證碼等公用服務,本工程的代碼,需從課程資料中找到jzo2o-publics.zip并解壓到jzo2o-publics目錄。
用IDEA打開jzo2o-publics目錄
9.6.2 配置OSS
jzo2o-publics提供通用的上傳圖片接口,圖片服務器使用阿里的OSS存儲。
創建bucket實例
獲取憑證
進入概覽:
在本頁復制bucket名稱及外網訪問域名endpoint參數
到此我們共拿到了四個參數:
-
endpoint: 外網訪問域名
-
accessKeyId: 訪問key
-
accessKeySecret: 密鑰
-
bucketName: 桶的名稱
在nacos配置
進入nacos在jzo2o-publics.ymal中配置上邊拿到四個參數:
9.6.3 配置高德地圖
jzo2o-publics提供通用的地圖定位接口,地圖定位服務使用高德地圖。
進入高德個人開發控制面板
我的應用中創建新應用
添加key
創建成功后獲取key
在nacos配置key
進入nacos配置jzo2o-publics.yml中高德地圖key。
9.6.4 啟動jzo2o-publics
啟動前配置nacos地址:
通過IDEA啟動
10 配置前端環境
10.1 編譯前端工程
10.1.1 安裝nodejs
首先從軟件工具目錄找到node-v14.19.1-x64.msi安裝nodejs(安裝前卸載之前安裝的node.js)
安裝完成,查看版本號
接下來安裝cnpm:
CNPM 是中國 npm 鏡像的客戶端。
在cmd命令窗口運行下邊的命令
npm install -g cnpm --registry=https://registry.npmmirror.com
安裝成功執行下邊的命令查看cnpm是否安裝成功
cnpm -v
cnpm安裝成功會輸出cnpm的版本號,如下所示:
10.1.2 編譯前端工程
從課程資料下的源碼目錄找到project-xzb-pc-admin-vue3-java.zip,并解壓到project-xzb-pc-admin-vue3-java目錄
通過cmd進入project-xzb-pc-admin-vue3-java目錄運行下邊的命令下載依賴包:
npm install || yarn
或
cnpm install || yarn
運行效果如下圖:
10.2 運行前端工程
10.2.1 運行前端工程
編譯完成現在運行前端工程,運行前端工程之前需要啟動以下后端服務:
jzo2o-gateway
jzo2o-foundations
接來來配置前端工程連接的網關地址:
通過cmd進入project-xzb-pc-admin-vue3-java目錄,找到vite.config.ts文件,打開文件配置網關地址(默認連接本地網關,不需要修改):
如下圖:
運行命令:npm run dev 啟動前端工程
啟動成功如下圖:
運行成功自動進入http://localhost:3000
賬號:xiaoyan
密碼:888itcast.CN764%…
點擊“登錄”,進入運營管理端
10.2.2 服務類型查詢功能驗證
通過下邊的功能驗證判斷開發環境是否搭建成功。
進入服務類型管理,可以正常查詢到數據說明配置成功。
10.2.3 上傳圖功能驗證
通過下邊的功能驗證判斷jzo2o-publics服務及OSS配置是否正確。
進入服務類型管理界面,點擊“新建”測試上傳圖片,如下圖:
選擇一個圖片進行上傳,上傳成功示例如下:
圖片回顯說明我們的oss正常
查看oss成功上傳
11 注意點
1、maven本地倉庫地址一定要配置正確
2、運行安裝文件時要以管理員模式運行。
3、關閉自己電腦的防火墻。
4、如果沒有使用下發的虛擬機需要修改數據庫的地址、nacos的地址。
修改nacos地址:修改bootstrap-dev.yml文件,如下圖:
修改數據庫地址,進入nacos找到shared-mysql.yaml文件,修改數據庫的ip、賬號、密碼,如下圖所示。
5、如下警告可以忽略
環境部署好后在進行接口測試時發現控制臺報下邊的警告:
Java WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.baomidou.mybatisplus.core.toolkit.SetAccessibleAction (file:/D:/develop/repository/com/baomidou/mybatis-plus-core/3.4.3/mybatis-plus-core-3.4.3.jar) to field java.lang.invoke.SerializedLambda.capturingClass WARNING: Please consider reporting this to the maintainers of com.baomidou.mybatisplus.core.toolkit.SetAccessibleAction WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release
以上警告表示在運行時發生了非法反射操作,這是因為Java9以上版本限制了反射操作的范圍,無法通過過反射訪問或修改類的私有成員,而Mybatis-plus存在違反該規則的代碼。
此警告不影響正常使用mybatis-plus,如果不想看到該警告信息可在啟動程序時加入–illegal-access=warn
如下圖: