Spring Boot專案的推薦軟體包結構 - Baeldung
鑑於Spring Boot的註解像@ComponentScan,@EntityScan,@ConfigurationPropertiesScan和@SpringBootApplication基於包結構來定義掃描的位置,在構建新的Spring Boot專案時,我們如何在包中組織類應具有高度的靈活性。
@SpringBootApplication註釋觸發對於當前包和它的子包元件掃描。因此,專案的主類應駐留在基本包中。這是可配置的,我們仍然可以通過手動指定基本軟體包來將其定位在其他位置。但是,在大多數情況下,這是不值得的麻煩,更重要的是,因此基於JPA的專案將需要在主類上新增一些其他註釋:
@SpringBootApplication(scanBasePackages = "example.xx.com") @EnableJpaRepositories("example.xx.com") @EntityScan("example.xx.com") |
包結構的設計獨立於Spring Boot。因此,它應該根據我們專案的需求設計。一種流行的策略是按業務功能打包,它增強了模組性並實現了子包內部私有的可見性。
讓我們以PetClinic專案為例。這個專案是由Spring開發人員構建的,目的是說明他們對如何構建普通Spring Boot專案的看法。
它是按功能包進行組織的。因此,我們有一個主要包org.springframework.samples.petclinic和5個子包:
- org.springframework.samples.petclinic.model
- org.springframework.samples.petclinic.owner
- org.springframework.samples.petclinic.system
- org.springframework.samples.petclinic.vet
- org.springframework.samples.petclinic.visit
它們中的每一個都代表應用程式的一個領域或功能,將內部的高耦合類分組到一個包內,實現高內聚性。
相關文章
- 專案管理軟體推薦專案管理
- Github 上熱門的 Spring Boot 專案實戰推薦GithubSpring Boot
- Spring Boot 2.x基礎教程:工程結構推薦Spring Boot
- 推薦一個開源免費的 Spring Boot 實戰專案Spring Boot
- 專案管理軟體有哪些好的推薦?專案管理
- 業務專案管理軟體使用推薦專案管理
- Spring Boot的Clean架構教程與原始碼 - BaeldungSpring Boot架構原始碼
- 超好用的免費專案管理軟體推薦專案管理
- 2022年暢銷的專案管理軟體推薦專案管理
- 產品管理推薦好用的專案管理軟體?專案管理
- 諮詢行業專案管理軟體推薦行業專案管理
- 推薦幾款優秀的專案報表軟體
- 免費易用的專案進度管理軟體推薦
- 都有哪些較好用的專案管理軟體可以推薦?專案管理
- 使用distillery 構建專業的 phoenix 專案軟體包
- 基於Spring Batch的Spring Boot的教程 - BaeldungBATSpring Boot
- Spring Boot Reactor Netty配置 | BaeldungSpring BootReactNetty
- Gradle快速構建Spring Boot專案GradleSpring Boot
- Spring Boot+Mybatis專案總結Spring BootMyBatis
- 2020十大最佳專案管理軟體推薦專案管理
- 有哪些簡單易用的專案管理軟體值得推薦?專案管理
- Spring Boot面試問題| BaeldungSpring Boot面試
- 在spring boot專案(maven)中引入其他 spring boot專案Spring BootMaven
- 85%的專案經理推薦:最優秀的7大專案管理軟體盤點!專案管理
- 有哪些比較好用的線上專案管理軟體值得推薦?專案管理
- 在Spring Boot設定Swagger 2 - BaeldungSpring BootSwagger
- GraphQL SPQR和Spring Boot入門 | baeldungSpring Boot
- Idea下構建基於Gradle的Spring Boot專案IdeaGradleSpring Boot
- springboot gradle demo (使用 Gradle 構建的 Spring Boot專案)Spring BootGradle
- Spring Boot專案建立Spring Boot
- 加快Spring Boot啟動的幾種方法 | baeldungSpring Boot
- Go 語言—資料結構和演算法專案推薦Go資料結構演算法
- Spring Boot入門(一):搭建Spring Boot專案Spring Boot
- Spring Boot——初體驗開啟第一個Gradle構建的Web專案Spring BootGradleWeb
- 如何將一個spring專案重構成spring-boot專案(僅後臺)Springboot
- 一、快速構建Spring Boot專案【springboot記錄】Spring Boot
- 構建第一個基於 Gradle 的 Spring Boot 專案GradleSpring Boot
- Windows軟體推薦Windows