Spring终章 - Spring boot

目录

1. 什么是Spring boot ?

2.  Springboot 的搭建

3. spring boot 配置文件

4.  SpringBoot 核心功能


1. 什么是Spring boot ?

           我们知道, spring虽然是轻量级的框架 , 但配置却是重量级的 , 我们需要编写大量的xml文件,并且还需要导入大量的 jar 坐标 , 一旦选错版本 , 就会导致很多因版本不兼容的问题 . 所以在这种不方便的情况之下 , spring boot 便诞生了 , 它又对spring进行了封装 , 使得我们不用考虑这些繁琐的配置 , 全身心投入到业务中

      Spring Boot以约定大于配置的核心思想,从而使开发人员不再需要定义样板化的配置。它集成了大量常用的第三方库配置(例如Redis,Jpa RabbitMQ,Quartz等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用,通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域成为领导者。

特点 : 

     创建独立的spring应用程序 , 直接内嵌tomcat、jetty和undertow ,提供了固定化的“starter”配置,以简化构建配置 , 尽可能的自动配置spring和第三方库 ,提供产品级的功能,如:安全指标、运行状况监测和外部化配置等 ,绝对不会生成代码,并且不需要XML配置

2.  Springboot 的搭建

 直接去到springBoot的官网 : https://start.spring.io/

选择完成后点击 generate 即可
        将下载下来的压缩包压缩到自己平时存放项目的目录下即可 , 然后在 idea 导入, 因为它要下载大量的依赖, 所以初次导入时间可能会比较久
创建完成后布局如下 : 

我们看到 , spring boot 默认有一个启动类 , 它内嵌了 tomcat , 我们通过它就可以直接启动

@SpringBootApplication
public class DemoApplication {
	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}
}

 我们直接在 java 目录下编写我们的业务代码即可, 这就是spring boot 的强大之处

3. spring boot 配置文件

      虽然spring boot 是声称0配置 , 但是有一些配置是无法避免的
      上述自动生成的 使用的配置文件是 application.properties , 它里面采用键值对的方式来设置
信息 . 
      但是这里我们要介绍的是另一种配置文件 
application.yml
它具有很强的格式要求 , 如下 :

server:
  port: 8888

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/sellbook?characterEncoding=utf8&useSSL=false&serverTimezone=UTC
    username: root
    password: root
    type: com.alibaba.druid.pool.DruidDataSource
    filters: stat
    initialSize: 5  #初始化时建立物理连接的个数
    minIdle: 1  #最小连接池数量
    maxActive: 20 #最大连接池数量
  main:
    allow-circular-references: true  #允许循环依赖

       按照空格的缩进来控制层级关系,只要是左边对齐的一列数据都是同一个层级的。层级不对就会出错 , 在里面可以配置数据源 , mybatis等 
       也可以使用
@ConfigurationProperties注解标签将配置文件中的内容映射到类中的

user:
  id: 1
  sex: "男"
  hobby:
    -打游戏
    -写代码

4.  SpringBoot 核心功能

    起步依赖 : 

      起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。

spring boot 在一开始便会为我们处理一些第三方的依赖

    自动配置 : 

      Spring Boot的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定Spring配置应该用哪个,不该用哪个。该过程是Spring自动完成的。

实现spring boot自动配置的核心注解 : @SpringBootApplication
它是一个复合注解

它里面包含了 @ComponentScan  
这个注解标签会在启动时扫描同级包以及包下面的类
        @SpringBootConfiguration,通过源码得知它是一个@Configuration,相当于之前的配置文件功能.
        
@EnableAutoConfiguration是这里最重要的注解,它实现了对Spring Boot应用自动装配的功能。

       @EnableAutoConfiguration是利用SpringFactoriesLoader机制加载自动装配配置的,它的配置数据在META-INF/spring.factories中,我们打开spring-boot-autoconfigure jar中的该文件,发现对应着许多个XXXAutoConfiguration配置类.

在它的里面又存在@Import({AutoConfigurationImportSelector.class})
     这个注解会根据我们在pom.xml中的配置自动加载对应的组件

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值