一. 使用IDEA新建项目
根据需要选择starter
这样使用IDEA搭建的一个SpringBoot项目就可以了。
同样可以通过https://start.spring.io/构建。
二. 结构分析
1. Springboot01Application:运行Springboot01Application就可以启动Spring Boot工程。
2. pom.xml中则配置好了选中的starter的依赖。
3. application.properties:一个空的配置文件,可以根据需要添加配置文件。
三、构建项目
在com.capgemini.springboot01下新建HelloController类
@RestController:@RestController=@ResponseBody+@Controller;当Controller想要将返回的数据以JSON的格式返回在页面时候可以使用,也就是在页面直接显示hello,Spring Boot;如果使用@Controller则是将hello,Spring Boot认为是一个页面。
四、 启动项目
在Springboot01Application.java中启动
在浏览器中输入:http://localhost:8080/hello
五、解析
1. pom文件
对于pom文件其中<parent>标签是Spring Boot的父级依赖,有了这个依赖这个项目才是Spring Boot项目,他是用来提供Maven的相关默认依赖,使用它,常用的包就可以省略了version标签。对于这个相关依赖可以在本地仓库的\org\springframework\boot\spring-boot-dependencies\2.1.4.RELEASE中的spring-boot-dependencies-2.1.4.RELEASE.pom中看到。
其中的spring-boot-starter-xxx则是在新建项目时候选择的默认依赖。
2. Springboot01Application.java
Spring Boot通常都有一个XXXaApplication.java入口类,入口类中有一个main方法,这个main方法是一个标准的Java应用的入口方法。
@SpringBootApplication:是Spring Boot的核心注解,他也是一个组合注解。
组合了@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan等;其中@SpringBootConfiguration:是@Configuration的一个子类,表明这是一个配置类;@EnableAutoConfiguration则是让Spring Boot根据类路径中jar依赖,为当前项目进行自动配置,比如添加了spring-boot-starter-web依赖,就会自动添加Tomcat和Spring MVC的依赖;
@ComponentScan则是定义了扫描路径,并从中找出标识需要装配类,并自动装配到Spring的bean容器中。
3. 配置文件application.properties
Spring Boot不仅支持普通的properties,还支持yaml语言的配置文件。