SpringBoot框架
SpringBoot框架的诞生解决了SSM三大框架的配置问题,在Springboot还未诞生时,使用配置文件完成三者的整合特别繁琐,配置文件多了也容易引起错误,Springboot的出现恰巧解决了这个问题,下面我们就来深入了解下Springboot。
1、springboot的自动配置
1)SpringBoot会针对不同的框架开发不同的整合jar包,若见到spring-boot-starter-xxxx,说明springboot已经将配置信息封装了。
2)SpringBoot主启动类中注解会自动添加依赖项。SpringBoot包含了包扫描,扫描当前主启动类的包路径;它开启了自动配置过程@EnableAutoConfiguration,若pom.xml文件中添加了spring自动配置的jar包,则会在程序启动时自动加载实例化对象。
2、SpringBoot属性赋值方式
当spring整合第三方架构时,有些类中要求实例化对象时需要赋值某些属性,这是就需要利用spring容器的方式为属性赋值。
2.1 @Value
首先在yml文件里面配置,然后利用@Value在程序中为属性赋值。
2.2 批量赋值
适用于框架中需要实例化多个对象时。
1)引入configuration这个jar包;
2)编辑yml配置文件;
3)使用@ConfigurationProperties(prefix=“xxx”)批量为属性赋值,记得添加set方法;
4)指定配置文件为属性赋值。(依赖的配置信息写入properties中);
5)使用@PropertySource(value=“classpath:/properties/xxx.properties”)指定配置未见,使用@value(${xxx.xxxx})为属性赋值。
3、yml文件切换环境配置
使用---对环境进行分割,要切换环境进行测试时,使用active关键字指定环境即可切换。
4、SpringBoot代理对象方式
4.1 JDK动态代理
Java原生提供的代理方式,使用起来和真实的对象一样,要求被代理者(真实class)必须实现接口,否则代理对象没有创建的模板。
4.2 CGLIB动态代理
第三方提供的,使用时必须导包,创建代理对象时被代理者可以不实现接口,但该对象必须是目标对象的子类。
代理规则:若需要为被代理者创建代理对象,若被代理者是接口或实现了接口,则统一采用JDK动态代理;若被代理者不是接口或未实现接口,则采用cglib动态代理方式。