最近公司要上個新系統,指定由我來帶兩個人進行開發,既然是新專案,那麼專案搭建的事就落到我的頭上了。現在都是使用springboot進行開發,為此我搭環境使用的是springboot,具體java環境如下,
使用springboot的版本是2.3.3.RELEASE。使用maven進行專案管理,
總結下,我使用到的環境,
JDK:JDK1.8
springboot:2.3.3.RELEASE
maven:3.8.1
好了,使用的環境就是上面這些。搭建專案框架的第一步就要確認好使用的環境,而且要和團隊成員溝通好專案環境,大家的環境一致,避免開發過程中因為環境產生問題。確認環境另一個好處是在部署的時候,減少開發和部署環境不一致。這個一定要注意生產環境,務必開發和生產使用同一套環境。
現在後端開發都是基於springboot的web專案,web專案一般都是使用MVC的模式,所以這裡也採用類似的模式。在專案maven結構組成上,採用父子專案,也就是一個主專案下有多個子module,分為下面幾個,
p-admin
p-web --》負責專案啟動
p-facade --》控制層,寫controller
p-service --》服務層,具體的業務處理
p-dao --》持久化層,負責和資料庫打交道
p-common --》公共層,util類\入參、出參等
p-api --》提供給第三方的介面
大體的專案結構給出來了,下面看子專案間的依賴關係哈,
p-web依賴於p-service、p-common
p-service依賴於p-dao、p-common
p-api依賴於p-common
其他的依賴第三方的庫暫時不看,下面再說。接下來就可以進行實際操作建立專案了。
這裡使用maven的父子專案結構,父專案是這樣建立的,
在idea中file-->new-->project出現下面的介面,直接next就好,
到下面的介面,填寫上專案名稱p-admin,
最好點finish即可,這樣專案便建立完成,建立完成後,專案資料夾下會有一些多餘的刪除即可,只保留pom.xml。可刪除的有src資料夾等。
緊接著建立子專案。
在父專案p-admin資料夾下右鍵,new-->Module
顯示的建立介面和父專案是一樣的,
寫上相應的子專案名稱p-web、p-facade等即可。
這樣父子專案結構就建立完成了,如下圖
建立完專案後,有個很重要的事情,那就是設定pom檔案,關注pom檔案總的打包方式、依賴關係兩個方面。先看父專案的pom.xml
每建立一個子專案在父pom中就會多一個設定,
在父pom中有多個子module。
由於使用的springboot的環境,這裡我引入一個父參照,
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.3.RELEASE</version>
</parent>
引入這個的好處是可以使用其內的依賴,看下spring-boot-starter-parent中的內容,可以看到其中還有一個父參照,
從該參照名稱中知道其中定義了spring-boot的依賴,可以看到定義了很多依賴,
所以,使用了spring-boot-starter-parent的專案中,可以直接使用相關依賴,不用關心版本號。
在p-admin的pom檔案中還要定義其子模組的依賴,以及p-admin使用的但不在spring-boot-starter-parent中定義的依賴,這樣子模組要使用的時候也不用關心版本號。
看下p-facade子專案中的pom檔案。
前面說到p-web專案用來啟動專案的,看下啟動類,
package com.wcj.my;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* 啟動類
* @date 2023/6/03 17:04
*/
@MapperScan(basePackages = "com.wcj.my.mapper")
@SpringBootApplication()
public class StartSpringbootApplication {
public static void main(String[] args) {
SpringApplication.run(StartSpringbootApplication.class,args);
}
}
這樣就可以了,另外spring-boot有組態檔,application.yml或application.properties檔案,這裡使用application.yml檔案,
server:
port: 8085
現在啟動看下,
可以看到啟動的執行緒ID是26352,在8005埠提供web服務,並且還有一個內部的執行緒池:applicationTaskExecutor。
這樣一個專案就搭起來了。
總結下,搭建一個專案的一些必備步驟,
1、確定專案環境;
2、確定專案結構
3、專案搭建及測試;
在搭專案的過程中,每個人都會或多或少遇到一些坑,歡迎關注下方公眾號交流。另原始碼也可以通過公眾號獲取。