SpringBoot学习(一)

1、什么是springboot

   独立运行:springboot内嵌各种容器,不需要打成war包,打成一个可执行的jar包就可以独立运行。   

   简化配置:spring-boot-starter-web启动器自动依赖其他组件,简化maven的配置。

   自动配置:springboot能根据当前路径下的类、jar包来自动配置bean,如添加一个spring-boot-starter-web启动器即拥有web的功能。无需其他配置。

   无代码生成和xml配置:配置过程中没有代码生成,也不需要xml配置文件就能完成所有配置工作,借助于Spring4.x的核心功能,通过条件注解完成。

   应用监控:提供一系列端点可以监控服务及应用   ,做健康检测。这个最近接触了一下(spring-boot-starter-actuator)去检测来一下端口的是否正常运行。

  (由于最近刚刚毕业,面试被问到springboot 和 springmvc的区别,一直以来都是拿来就用,回答的效果不是太理想)

   其实Springboot是一个大框架包含来许多东西,之前接触学习是SSM框架,所以对于springboot来说Spring就是核心内容之一,也包括Springmvc。

   springmvc是Spring处理web层请求的一个模块,又可以说一款web mvc框架。

   它们之间的关系大概是:Spring mvc < spring < springboot

  springboot在我的理解就是把常用的这些基础框架组合起来,这些框架像一块块积木,拿来放进去用就行,不用就把它抽出来。Spring发展至今,已经到了学习    Java基本无法忽视它的地步,从我之前接触的SSM框架就可以看到,使用spring一系列技术的时候要去考虑或者解决一些版本不兼容的问题,springboot可以理    解为就是提供了这个解决方案。技术的进步源于人的懒惰,因此为了简化Spring各种配置,就推出了Springboot约定优于配置的Spring的配置流程。

2、SpringBoot的核心配置文件和区别

     核心配置文件是application(.yml或者.properties)和bootstrap(.yml或者.properties)

     在Spring Cloud的官方文档找到它们的区别,这个链接通过百度别人的博客看到的:http://cloud.spring.io/spring-cloud-static/Edgware.SR3/single/spring-cloud.html#thebootstrapapplicationcontext

   通过文档的阅读大概意思就是,Springboot中有两种上下文,一种是bootstrap,另一种是application。bootstrap是应用程序的父上下文,就是说bootstrap加     载优先于application。bootstrap主要用于额外的资源来加载配置信息,还可以在本地外部配置文件解密属性。两个上下文共用一个环境,它是任何Spring应用     程序的外部属性的来源。bootstrap里面的属性会优先加载,它们默认也不能被本地相同配置覆盖。

   对比于application,bootstrap由ApplicationContext加载,比application优先加载;bootstrap里面属性不能被覆盖。

   application这个配置文件主要用于springboot项目的自动化配置。

3、Springboot的核心注解

   启动类上面的注解是@SpringBootApplication,也是SpringBoot的核心注解,主要包含以下三个注解:

   @SpringBootConfiguration:组合了@Configuration注解,实现配置文件的功能

   @EnableAutoConfiguration:打开自动配置的功能,也可以关闭某个自动配置的选项,比如关闭数据源自动配置功能:@SpringBootApplication(exclude ={

     DataSourceAutoConfiguration.class})

   @ComponentScan:组件扫描

原文地址:https://www.cnblogs.com/mhSui/p/11302991.html