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