1 什么是SpringBoot
- 服务于spring框架的框架
- 约定优于配置下的产物
1.1 如何理解上述两句话
1.1.1 约定优于配置下的产物,怎么理解这句话?
如果你想体验springboot带来的轻量级开发,那就必须遵循springboot的自己的约定
1.1.1.1 约定优于配置的体现
- maven 的目录结构
a) 默认有 resources 文件夹存放配置文件
b) 默认打包方式为 jar - spring-boot-starter-web 中默认包含 spring mvc 相关依赖以及内置的 tomcat 容器,使得构建一个 web 应用更加简单
- 默认提供 application.properties/yml 文件
- 默认通过 spring.profiles.active 属性来决定运行环境时读取的配置文件
- EnableAutoConfiguration 默认对于依赖的 starter 进行自动装配(不理解先看下文)
1.1.2 服务于spring框架的框架,怎么理解这句话?
即保留spring的特性,改进spring配置的臃肿,使得文件配置更加轻量化,让我们更专注于业务的开发。
1.1.2.1 springboot是怎么延续spring原有的一些特性呢,并且配置轻量化呢,这就要看到spring的发展历程
-
Spring 1.x
spring 1.x 注重配置文件,比如说Ioc将一个对象交给容器管理,需要配置文件,以下方式,但是如果项目太大,配置文件就会很臃肿
<bean id="girl2" class="com.helloworld.User2"> <property name="userName" value="Talor Swift"></property> </bean>
-
Spring 2.x
Spring 2.0 配置文件与注解文件并存版本,既可以使用配置文件,也可以使用注解,除了以上方式还多了以下注解
@Controller @Service @Responstory @Compoent 以上方式省去了配置文件配置,并且可以通过自动扫描来加载对象到Ioc容器
-
Spring 3.x(里程碑)
Spring 3.x 无配置化的方式实现Bean的装配 ,提供了几个注解以及模块化驱动
-
@Configuration
它的功能和上述的几个注解功能一样都是通过Ioc来管理对象,它的核心目的就是把bean对象更加便捷的加载到Ioc容器中
@Configuration public class RedissonAutoConfiguration { @Bean public RedissonClient redissonClient() { return new RedissonClient(); } } 以上通过代码的方式来实现Bean(R
-