参考:https://www.bilibili.com/video/av38657363?p=1
一、SpringBoot优点:
二、HelloWorld Demo构建
1)新建Maven工程(略过)
2)增加Maven依赖(参考spring官网中springboot的quickstart)
3)通过@SpringBootApplication声明springboot应用程序
4)定义Controller
@Controller:定义Controller
@RequestMapping("/hello") :对外提供的URL路径
@ResponseBody : 返回值放到响应body中返回
5)直接Run,并访问http://127.0.0.1:8080/hello查看执行效果
6)简化部署(POM新增如下配置,生成可直接启动的JAR)
7)Maven Package打包成可执行JAR包(内含lib文件包含依赖的各种JAR包括嵌入式Tomcat包),通过java -jar 可执行jar包后,可直接访问http://127.0.0.1:8080/hello
POM分析
1、spring-boot-starter-parent
继续查看Parent定义:
继续查看Parent定义:定义一堆依赖spring的库的版本号
--- 真正管理springboot应用中的所有依赖的版本,也包含mysql等三方件(截图未包含),使得自己应用不用再次配置
2、spring-boot-starter-web --启动器
导入WEB模式正常启动所依赖的组件;
3、各种spring-boot-starter-xxx
参考springboot官网
@SpringBootApplication注解分析
1、@SpringBootConfiguration
表示一个springboot的配置类,内部是spring注解@Configuration
2、@EnableAutoConfiguration
告诉springBoot开启自动配置功能;
实现效果:将主配置类(@SpringBootApplication标注的类)所在包及子包所有组件都扫描到spring容器
@Import:给容器中导入组件
Register的功能:
EnableAutoConfigurationImportSelector
将所有需要导入组件以全类名方式返回,组件被添加到容器中;会给组件导入非常多自动配置类;免去了手动编写配置写入功能组件的工作