Spring Boot專案目錄結構
一. 程式碼層結構
根目錄:com.example.demo
1.啟動類(gApplication.java
)推薦放在根目錄com.example.demo包下
2.實體類(domain
)
A: com.example.demo.domain(jpa專案)
B: com.example.demo.pojo(mybatis專案)
3.資料介面訪問層(Dao
)
A: com.example.demo.repository(jpa專案)
B: com.example.demo.mapper(mybatis專案)
4.資料服務介面層(Service
)推薦:com.example.demo.service
5.資料服務實現層(Service Implements
)推薦:com.example.demo.service.impl
使用idea的同學推薦使用com.example.demo.serviceImpl目錄
6.前端控制器層(Controller
)推薦:com.example.demo.controller
7.工具類庫(utils
)推薦:com.example.demo.utils
8.配置類(config
)推薦:com.example.demo.config
9.資料傳輸物件(dto
)推薦:com.example.demo.dto
資料傳輸物件(
Data Transfer Object
)用於封裝多個實體類(domain
)之間的關係,不破壞原有的實體類結構
10.檢視包裝物件(vo
)推薦:com.example.demo.vo
檢視包裝物件(
View Object
)用於封裝客戶端請求的資料,防止部分資料洩露(如:管理員ID),保證資料安全,不破壞原有的實體類結構
二、資源目錄結構
根目錄:resources
1.專案配置檔案:resources/application.yml
2.靜態資源目錄:resources/static/
用於存放html、css、js、圖片等資源
3.檢視模板目錄:resources/templates/
用於存放jsp、thymeleaf等模板檔案
4.mybatis對映檔案:resources/mapper/(mybatis專案)
5.mybatis配置檔案:resources/mapper/config/(mybatis專案)
三、專案目錄示例
.
| mvnw
| mvnw.cmd
| pom.xml
| README.md
| .gitignore
└─ src
│ ├─main
│ │ ├─java
│ │ │ ├─com.example.demo
│ │ │ │ gApplication.java
│ │ │ │
│ │ │ │ ├─controller
│ │ │ │ │ ├─UserController.java
│ │ │ │ │
│ │ │ │ ├─domain
│ │ │ │ │ ├─User.java
│ │ │ │ │
│ │ │ │ ├─service
│ │ │ │ │ ├─UserService.java
│ │ │ │ │ │
│ │ │ │ │ ├─impl
│ │ │ │ │ │ ├─UserServiceImpl.java
│ │ │ │ │
│ │ │ │ ├─repository
│ │ │ │ │ ├─UserRepository
│ │ │ │ │
│ │ │ │ ├─dto
│ │ │ │ │ ├─UserDTO.java
│ │ │ │ │
│ │ │ │ ├─vo
│ │ │ │ │ ├─UserVO.java
│ │ │ │ │
│ │ │ │ ├─utils
│ │ │ │ │ ├─EncryptUtil.java
│ │ │ │ │
│ │ │ │ ├─config
│ │ │ │ │ ├─QuartzJob.java
│ │ │ │ │
│ │ ├─resources
│ │ │ ├─static
│ │ │ │ ├─css
│ │ │ │ ├─js
│ │ │ ├─templates
│ │ │ ├─application.properties
│ │
│ ├─test
│ │ ├─java
│ │ │ ├─com.example.demo
│ │ │ │ ├─controller
│ │ │ │ │ ├─UserControllerTests.java