原文出处:https://blog.youkuaiyun.com/gnail_oug/article/details/80111762
一、代码结构

Spring Boot项目结构是maven的基本结构,启动类一般放到代码的根包里,如com.songguoliang.demo,官方推荐根包为反向域名。
resources为资源包,里面放置所需要的配置文件
test里面存放测试相关的内容
二、pom.xml
<!-- Spring Boot启动器父类 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<!-- Spring Boot web启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
在pom.xml里,和以前普通maven项目不同的是,多了个<parent> , 它是所有Spring Boot启动器的基础,定义了很多常用的依赖和版本。
Spring Boot定义好了很多启动器,在项目中需要使用某个功能时,把该功能的启动器引入即可,无需单独管理各个jar的依赖。
Spring Boot官方的启动器可以参考: Spring Boot官方启动器
Spring Boot启动器的命名方式一般为spring-boot-starter开头,后面为相关的技术。
`
三、入口类和@SpringBootApplication
Spring Boot通常会有一个*Application的入口类,里面有一个main方法`,说白了就是标准的java应用的入口方法。
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
入口类最主要的就是注解@SpringBootApplication,它是一个组合注解,如下图

也就是说@SpringBootApplication等价于@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan这三个注解。
@SpringBootApplication开启了spring的组件扫描和自动配置功能。
本文详细介绍了SpringBoot项目的标准结构,包括根包、资源包和测试目录的作用。解析了pom.xml中SpringBoot启动器的配置,以及如何通过添加特定的启动器来简化依赖管理。同时,阐述了入口类和@SpringBootApplication注解的功能,解释了它们如何开启组件扫描和自动配置。
2279

被折叠的 条评论
为什么被折叠?



