Springboot最佳包结构

目录

概述

无默认package

入口类

包结构 


概述

我们在构建Springboot项目的时候,我们可以很灵活的去管理我的们class,以及创建包结构,但是有一些原则我们要牢记在心。

无默认package

Springboot中的一些注解例如@ComponentScan@EntityScan, @ConfigurationPropertiesScan 和 @SpringBootApplication需要使用包的路径去扫瞄,所以我们应该避免使用默认的package。

入口类

我们通常使用注解@SpringbootApplication来触发组件扫描,检查当前文件夹以及对应子文件夹中的组件,组件扫描的地址当然也可以配置。

@SpringBootApplication(scanBasePackages = "example.csdn.com")

包结构 

至于package的结构,可以自定义,根据项目的不同有不同的形式,一种流行的方式是根据功能拆分,比如PetClinic这个项目,spring官方推荐的项目用来展示如何定义包结构,除了mainClass所在的包org.springframework.samples.petclinic外还有如下的包结构。

  • 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

总之,良好的包结构可以使代码高内聚低耦合,便于开发人员的开发和维护。

你可能感兴趣的:(spring,boot,java,spring)