在上一節,我們已經完成了項目的整體技術架構設計和具體的資料庫設計,接下來,我們搭建整體的開發架構。
開發工具選用Idea。

1、建立多Module工程
1.1、建立父工程
建立一個父項目,項目命名為eshop-project,用于管理子子產品功能。
- 建立Project
- 選擇Maven工程,next
- 填寫GroupId和ArtifactID
- 填寫項目名,選擇項目位置
- 删除src,添加maven配置
<!--設定為pom,管理依賴-->
<packaging>pom</packaging>
<!--使用properties統一管理屬性-->
<properties>
<java.version>1.8</java.version>
</properties>
需要注意,我們這裡最好統一設定一下Jdk編譯版本,預設的編譯版本1.5可能會影響我們使用一些新特性:
<!--配置編譯JDK版本-->
<build>
<plugins>
<!--JDK版本 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<showWarnings>true</showWarnings>
</configuration>
</plugin>
</plugins>
</build>
1.2、建立子module
- 選中父項目,右鍵,建立module
- 選擇Maven工程
- 填寫子module工程名
- 建立完成,完成效果
OK,到此我們的子module就建立完成了。接下來如法炮制,建立另外幾個子module,結果如下:
這裡我們按照之前的業務子產品拆分來建立每個子工程,子工程對應的功能:
- eshop-common:通用的工具類,實體包等等。
- eshop-finance:支付子服務,對應shop-finance庫。
- eshop-goods:商品子服務,對應shop-goods庫。
- eshop-order:訂單子服務,對應shop-order庫。
- eshop-stock:庫存子服務,對應shop-stock庫。
- eshop-user:使用者自服務,對應shop-user庫。
注意業務和功能粒度的劃分,我們這裡劃分到了每個業務子子產品,但是對應的mvc分層沒有劃分。在實際的生産中,可能會根據實際情況,把視圖層、服務層、持久層再度拆分。這樣更細的粒度,更友善小團隊的開發。
我們這裡隻是為了開發的友善,在實際的項目中,我們對應的每個服務一般都會單獨建立項目,由不同的小組來進行維護,開發、測試過程隻需要把服務注冊在統一的注冊中心就可以了。
這樣一個粗略的開發架構就搭建起來了,下一節我們會接着完善它,包括引入SpringBoot、MybatisPlus等等。
2、使用Gti進行版本控制
Git是現在最流行的版本控制系統。在企業級的微服務項目中,一般使用Gti進行版本控制,使用GitLab搭建遠端倉庫。
在這裡,我們選擇使用Gitee作為我們的遠端倉庫。
關于Giit的基礎使用,可以檢視我的這篇部落格:Git全棧開發者使用指南
2.1、初始化本地倉庫
- 打開項目路徑,右鍵git bash
- 執行初始化本地倉庫指令
git init
- 在項目目錄下建立檔案檔案
,寫入需要忽視送出的檔案類型.gitignore
SpringCloud Alibaba實戰(4:基本開發架構搭建)
# Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
**/.idea/**
**/target/**
**/*.iml
*.iml
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
- 首次送出,指令如下:
$ git status
$ git add .
$ git commit -m "🏠eshop微服務項目初始化"
通常我們還會建立一個開發分支,由于隻是個簡單demo,我們這裡就不建了。
2.2、初始化遠端倉庫
gitee是國内版的github,最近github通路很不穩定,是以選擇将遠端倉庫放在gitee。關于Github和Gitee的配置,可以檢視我的這篇部落格:Windows配置Github、Gitee共存的Git環境
- 打開gitee,建立倉庫
- 填寫倉庫名城,倉庫介紹,開源等等
- 可以看到,我們的遠端倉庫已經建立完成,可以看到倉庫還是空空如也
- 本地倉庫關聯遠端倉庫,拷貝倉庫位址,在本地倉庫,使用指令關聯遠端倉庫:
$ git remote add origin [email protected]:fighter3/eshop-project.git
- 使用指令推送本地送出到遠端倉庫
$ git push origin master
OK,在遠端倉庫,已經可以看到我們的送出了。
參考:"簡單的事情重複做,重複的事情認真做,認真的事情有創造性地做!"——
我是三分惡,可以叫我老三/三分/三哥/三子,一個能文能武的全棧開發,咱們下期見!
【1】小專欄 《SpringCloudAlibaba微服務實戰》
【2】:Spring Cloud Alibaba系列之-項目搭建(一)