Spring Boot

Spring Boot的优势

Spring Boot最大的优势就是“约定优于配置”。“约定优于配置”是一种软件设计范式,开发程序员在开发过程中按照约定好的方式进行编程,在开发过程中可以减少做决定的次数,获取简单的好处,而且又不失灵活性。

Spring Boot“约定优于配置”体现在哪

  • Spring Boot Starter在启动的时候按照约定的方式对资源进行初始化;
  • Spring Boot Jpa会按照约定的方式自动生成sql,减少不必要的代码的编写。

Spring Boot Starter的工作原理

  • Spring Boot在启动的时候会在依赖的starter中查找resources/MIETA-INF/spring.factories文件,根据文件中配置的jar包扫描项目所依赖的jar包;
  • 根据spring.factories配置加载AutoConfigure类;
  • 根据@Conditional注解的条件,自动配置并将bean注入到Spring Context。
  • 总之,Spring Boot在启动的时候,根据约定的方式去读取Spring Boot Starter的配置信息,根据配置信息初始化资源,并将bean注入到spring 容器中。这样Spring Boot在启动完毕后,所有的资源就都准备好了,只需要在使用的过程中直接注入对应的bean资源。

Spring的自动配置是如何实现的

Spring Boot项目的启动注解是@SpringBoot Application,该注解由@Configuration ,@Componentscan,@EnableAutoConfiguration三个注解组成,

  • @Configuration:该注解的类为bean配置类;
  • @Componentscan:会自动扫描和加载符合条件的组件;
  • @EnableAutoConfiguration是自动配置的入口,该注解又通过@import注解导入了AutoConfigurationImportSelecter,在该类中加载META-INF/spring.factories的配置信息,然后筛选出以EnableAutoConfiguration为key的数据,加载到容器中,来完成自动配置功能。

Spring MVC,Spring Boot,Spring Cloud的关系

  • Spring MVC是通过将model,dao,controller分离,将一个较为复杂的web应用分为逻辑清晰的几部分,以达到简化开发,分层工作的框架。
  • Spring Boot是一个快速开发框架,能否快速整合各种第三发常用框架,完全采用注解的形式,简化XML配置。
  • Spring Cloud是一个完整的微服务框架,功能非常强大。
  • Spring Boot默认集成Spring MVC组件,Spring Cloud依赖Spring Boot实现微服务,使用Spring MVC实现微服务Http接口的编写。

javaBean和Spring Bean的区别

  • JavaBean是一个类,类里面有各种属性和setter,getter方法;Spring Bean可以看做是由Spring这个大工厂生产出来的产品,Spring会生产出来什么样的产品完全取决于我们在配置文件中的配置。
  • 作用不同:java Bean通常作为值传递的参数;Spring Bean的作用几乎无处不在,Spring中任何组件都可以作为bean。
  • 写法不同:java Bean需要些getter和setter方法;Spring Bean只需要setter方法。
  • 生命周期不同:java Bean没有任何容器来管理它的生命周期;Spring Bean由Spring容器来管理它的声明周期。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值