概述:
Spring Boot对代码布局没有特别的要求,但是有些更好的做法能够在你编码的时候帮助你提高编码效率。
4.1 Using the “default” package
当类里面没有包声明的时候就称其所在的包为默认包(default package),默 认包的使用一般不被提倡,甚至应该被禁止。因为每个jar里面的每个类都会被读取,他将导致使用 @ComponentScan,@EntityScan,@SpringBootApplication注解的Spring Boot出现特殊的问题。
4.2 Locating the main application class
我们通常建议您将主应用程序类放在其他类之外的根目录下。该@EnableAutoConfiguration
注释通常放在你的主类上隐含定义了某些项目的基本“search package”。 例如,如果你正在写一个JPA应用,包的@EnableAutoConfiguration注释类将被用于搜索@Entity实体项。
使用root package 允许@ComponentScan 注解添加特殊的basePackage参数. 如果你的主类是在 root package,你也可以使用@SpringBootApplication 注解。
这是典型的布局:
下面Application.java基于@Configuration声明了main()方法: