Springboot

spring boot 我的理解就是对springmvc的一个升级,按照约定大约配置的理念,对ssm项目进行简化。主要优点包括:

a:继承了一个starter-parent包,里边包含了spring常用的依赖;

b:采用了约定大约配置的思想,基本实现了0配置;代码中不在建议写xml文件,只需要写属性文件就可以;
c:默认的属性文件是application.propertis,引入了yml文件,层级显示,自动提示
d:内置了tocmat,通过main方法直接启动,省去了项目部署的麻烦;

它的核心注解是:SpringbootApplication;

问题:springboot的启动原理和自动装配?(主动说)

1、Springboot内置了tomcat组件,我们可以通过在启动类加上SpringbootApplication注解,然后用main方法进行启动;

2、SpringBootApplication由多个注解组成,其中核心的有三个;

3、注解1SpringBootConfiguration 这个注解就相当于IOC。主要就是为了加载Springboot本身的属性文件和项目里边引入的各种starter包;

4、注解2:EnableAutoConfiguration这个注解主要是开启Springboot的自动配置,加载我们项目中自己自定义的那些加了@configuration注解的类;(加@Configration这个注解的类,就相当于springmvc的xml配置文件,用于帮我们把第三方组件实现控制反转,交给spring的IOC容器进行管理;)

5、注解3:CompanScan 这个注解主要是扫描我们自己编写的controller、service、dao这写类,加载到spring的ioc容器里边;默认扫描当前启动类的本包或者子包;

  1. SpringbootApplication扫描到引入的各种starter包以后,会首先去读取包下的一个spring.facotories的文件。通过这个文件加载starter里边的各种第三方配置,到tomcat插件的servlet容器中。这样项目就运行起来了;
  2. 所以这里可以发现,Springmvc是先加载servlet容器,再去加载spring的配置。而Springboot刚好相反,是先加载Spring的配置,然后再去初始化servlet容器。

 

问题: Springboot读取yml(properties)属性文件的方式有哪些?

a:使用@Value注解读取---必须熟悉

b:使用Environment读取 ---知道

c:@ConfigurationProperties注解读取---必须熟悉

在实际项目中,当项目需要注入的变量值很多时,上述所述的两种方法工作量会变得比较大,这时候我们通常使用基于类型安全的配置方式,将properties属性和一个Bean关联在一起,即使用注解@ConfigurationProperties读取配置文件数据。

 

问题: Springboot如何实现多环境配置?

在Springboot的resouce目录下,创建多个配置文件,比如:

测试环境application-test.yml

开发环境application-dev.yml

生产环境application-product.yml

项目启动时,默认去读取application.yml。通过application.yml中的spring.profiles.active=dev属性,找到对应的配置文件;这个profiles也可以通过maven的pom文件,或者启动时加入参数进行指定;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值