springboot框架(上)

1.springboot框架能够帮我们做什么?

简化ssm框架的搭建工作,避免非常多的xml配置文件,提倡的以类配置的方式来进行配置。该框架内提供了很多的预配置类(在spring-boot-autoconfiguration/META-INF/spring.factories/EnableAutoConfiguration)。

简化了其他组件向spring框架集成。

springboot框架对web开发涉及到技术栈都能整合到一起。

2.对springboot框架的启动类有清晰的认识

  • main方法中

  • SpringApplication.run(主配置类的类对象,main参数)
    初始化了springboot监听器(监听程序的启动,销毁)
    打印输出banner
    创建spring容器对象,加载配置类,refreshContext方法初始化容器,识别SpringBootConfiguration注解
    初始化FatilureAnalyer错误分析器对象,共19个。
    
  • 类上的@SpringBootApplication注解

  • @SpringBootConfiguration:本质就是@Configuration注解,表示当前类是一个配置类。
    
    @EnableAutoConfiguration
    	@AutoConfigurationPackage:把主配置类的包名作为bean扫描的范围。
    	@Import({AutoConfigurationImportSelector.class}):去jar包/META-INF/spring.factories下查找key为EnableAutoConfiguration的数据,找到jar包的所有的预配置类,按条件加载配置。
    
    @ComponentScan:开启包扫描(@Configuration,@Controller,@Service,@Component,@Value,@Bean...)
    

3.对springboot的pom文件有清晰的认识

parent父工程:指定当前项目的父工程,父工程统一了各个组件之间的版本兼容;统一maven插件配置

packaging打包方式:默认是jar包打包

starter启动器:

​ springboot对组件提供了启动器的概念,把该组件整合项目需要用到的各个依赖包进行整理,并把该组件需要加入spring容器的bean对象做了预配置。

​ 官方的启动器:spring-boot-starter-web;spring-boot-starter-json;spring-boot-starter-jdbc;spring-boot-starter-redis

​ 第三方的启动器:Druid-spring-boot-starter;mybatis-spring-boot-starter

spring-boot-maven-plugin插件:把项目打包为jar包,并设置Main-class启动类,目的是让该jar包是一个可执行的jar包

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <!--当前项目的父工程,作用是统一了各个组件之间的兼容问题,统一maven插件配置-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>boot110</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>boot110</name>
    <!--打包方式默认是jia包打包,其他的方式还有war,pom-->


    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>

        <!--官方启动器-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!--热部署,java类改变的时候,自动重启-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <!--把项目打包为jar包,并设置Main-class启动类,目的是让该jar包是一个可执行的jar包-->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值