工程結(jié)構(gòu)(最佳實踐)
Spring Boot框架本身并沒有對工程結(jié)構(gòu)有特別的要求,但是按照最佳實踐的工程結(jié)構(gòu)可以幫助我們減少可能會遇見的坑,尤其是Spring包掃描機(jī)制的存在,如果您使用最佳實踐的工程結(jié)構(gòu),可以免去不少特殊的配置工作。
#典型示例
- root package結(jié)構(gòu):
com.example.myproject
- 應(yīng)用主類
Application.java
置于root package下,通常我們會在應(yīng)用主類中做一些框架配置掃描等配置,我們放在root package下可以幫助程序減少手工配置來加載到我們希望被Spring加載的內(nèi)容 - 實體(Entity)與數(shù)據(jù)訪問層(Repository)置于
com.example.myproject.domain
包下 - 邏輯層(Service)置于
com.example.myproject.service
包下 - Web層(web)置于
com.example.myproject.web
包下
com
+- example
+- myproject
+- Application.java
|
+- domain
| +- Customer.java
| +- CustomerRepository.java
|
+- service
| +- CustomerService.java
|
+- web
| +- CustomerController.java
|