• SpringBoot介绍及自动装配


    介绍

    什么是SpringBoot呢,就是一个javaweb的开发框架,和SpringMVC类似,对比其他javaweb框架的好处,官方说是简化开发,约定大于配置,  you can "just run",能迅速的开发web应用,几行代码开发一个http接口。

    Spring Boot 基于 Spring 开发,Spirng Boot 本身并不提供 Spring 框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于 Spring 框架的应用程序。也就是说,它并不是用来替代 Spring 的解决方案,而是和 Spring 框架紧密结合用于提升 Spring 开发者体验的工具。Spring Boot 以约定大于配置的核心思想,默认帮我们进行了很多设置,多数 Spring Boot 应用只需要很少的 Spring 配置。同时它集成了大量常用的第三方库配置(例如 Redis、MongoDB、Jpa、RabbitMQ、Quartz 等等),Spring Boot 应用中这些第三方库几乎可以零配置的开箱即用。

    简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架 。

    Spring Boot的主要优点:

    • 为所有Spring开发者更快的入门
    • 开箱即用,提供各种默认配置来简化项目配置
    • 内嵌式容器简化Web项目
    • 没有冗余代码生成和XML配置的要求

    自动装配

            可以看到,在SpringBoot项目的主类有一个@SpringBootApplication注解:标注这个类是一个SpringBoot的应用:启动类下的所有资源将被导入,即自动装配

    自动装配流程图解析:有道云笔记

    而后在主方法中有这么一段代码:SpringApplication.run(DemoApplication.class, args);

    有两个参数,一个是应用入口的类(DemoApplication.class),一个是命令行参数(args)

    作用是将SpringBoot应用启动

    以为就是运行了一个main方法,实际上开启了一个服务

    SpringApplication.run分析

    分析该方法主要分两部分,一部分是SpringApplication的实例化,二是run方法的执行;

    SpringApplication:

    这个类主要做了以下四件事情:

    1、推断应用的类型是普通的项目还是Web项目

    2、查找并加载所有可用初始化器 , 设置到initializers属性中

    3、找出所有的应用程序监听器,设置到listeners属性中

    4、推断并设置main方法的定义类,找到运行的主类

    附上SpringBoot主类:

    1. package com.chen.demo;
    2. import org.springframework.boot.SpringApplication;
    3. import org.springframework.boot.autoconfigure.SpringBootApplication;
    4. @SpringBootApplication
    5. public class DemoApplication {
    6. public static void main(String[] args) {
    7. SpringApplication.run(DemoApplication.class, args);
    8. }
    9. }

  • 相关阅读:
    Java8实战-总结24
    Windows无法启动这个硬件设备(代码19)怎么办?
    mysql基础
    231108 C语言else if和MATLAB elseif
    [WLAN]在Softap manager中连接、断开时,添加广播
    光学红外雨量IFR202型传感器智慧检测雨量场景等行业
    Python中的Apriori关联算法-市场购物篮分析
    websocket链接断开服务器报错java.io.EOFException解决办法
    玩转数组高级技法,成为JS高手
    第二十五章 使用任务管理器(三)
  • 原文地址:https://blog.csdn.net/Ms_future/article/details/125463886