SpringBoot介绍

1.简介

SpringBoot是一个全新的框架,其设计目的是用来简化spring应用初始搭建以及开发过程。

2.springboot优缺点

优点
1.创建独立运行的spring应用程序
2.自行嵌入tomcat,无需部署war文件
3.简化maven配置
4.自动配置spring’
5.提供日志,健康检查等
6.不要求配置xml文件
7.非常容易和第三方框架集成起来
缺点
1.版本更新较快,可能出现较大变化
2.约定大于配置,会出现一些难解决的问题

3.提出疑问

1.之前的web应用打包是war,为什么现在的打包方式是jar
因为war包里边需要部署tomcat,加载web应用,打包成jar包,里边自带tomcat,无需配置tomcat,这样的特点符合springboot的简洁性
2.当前项目继承的spring-boot-starter-parent项目有什么用
继承父类的项目,有些依赖不需要引入,直接继承父类,如果需要添加新的依赖,会自动覆盖父类的依赖,如果不具体说明,默认引用父类
3.导入的依赖spring-boot-starter-web有什么用
web的场景,自动帮我们引入了web模块开发需要的相关jar包
4.@SpringBootApplication注解有什么用
启动springboot项目
5.main方法中执行的代码SpringApplication.run(…)有什么用
启动springboot应用,加载自定义的配置类,完成自动配置功能,把当前项目配置到嵌入的tomcat服务器,启动嵌入的tomcat服务器

4.测试类

两种方式

@SpringBootTest
@RunWith(SpringRunner.class)
public class App { ... }
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes={配置类1.class, 配置类2.class, ...})
public class App { ... }

5.SpringBootgBoot自动配置原理!

 一切从主函数开始
@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

注解:@SpringBootApplication 这里重点的注解有3个:

  • @SpringBootConfiguration
    配置类,一个springboot中只有一个这样的注解,会被springbootTest类自动获取
  • @EnableAutoConfiguration
    启动自动配置,告诉springboot基于你所添加的依赖,去猜测你想要的spring配置,例如我们引入web的依赖,启动器中帮我们添加了tomcat,springmvc的依赖,他就知道要开发的是一个web应用,所以帮我们完成springmvc的默认配置!其实在我们的项目中,已经引入了一个依赖:spring-boot-autoconfigure,其中定义了大量自动配置类,打开WebMvcAutoConfiguration,- @ConditionalOnWebApplication(type = Type.SERVLET)
    ConditionalOn,翻译就是在某个条件下,此处就是满足项目的类是是Type.SERVLET类型,也就是一个普通web工程,显然我们就是
  • @ConditionalOnClass({ Servlet.class, DispatcherServlet.class, WebMvcConfigurer.class })
    这里的条件是OnClass,也就是满足以下类存在:Servlet、DispatcherServlet、WebMvcConfigurer。这里就是判断你是否引入了SpringMVC相关依赖,引入依赖后该条件成立,当前类的配置才会生效,在webMVCConfiguration类中有视图解析器,默认支持put请求的过滤器
  • @ComponentScan
    默认当前类(包括子包)开始查找,具有四大注解的类,自动创建对象放到spring容器中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值