IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> SpringBoot介绍 -> 正文阅读

[Java知识库]SpringBoot介绍

1、 springboot介绍

由于J2EE开发时繁琐的配置、低的开发效率及复杂的部署流程,而且第三方集成难度大。springboot规避了以上缺点,简化开发,不需要太关注框架的配置。
J2EE笨重的开发、繁琐的配置、低下的开发效率、复杂的部署流程、第三方技术集成难度大。
SpringBoot的出现就是为了简化开发、去繁从简。是整合Spring技术栈的一站式框架,其作为spring的子项目有很多优点:
1)创建独立Spring应用
2)内嵌Tomcat、Jetty(无需部署war包)
3)自动starter依赖,简化构建配置
4)自动配置Spring以及第三方功能
5)没有代码生成、无需编写XML配置,约定大于配置,实现开箱即用。
6)提供生产级别的监控、运行状况检查及及外部优化配置
缺点:
1)迭代较快。
2)封装太深,内部原理复杂,不容易精通.

2、springboot 的starter 的启动原理

starter是一种服务,是springBoot重要的组成部分,在创建SpringBoot应用用于web开发时,选择的是spring-boot-starter-web。使用某个功能的开发者不需要关注各种依赖库的处理,不需要具体的配置信息,由SpringBoot会自动通过classpath路径下的类发现并加载需要的Bean。
通过starter,我们能够快速的引入一个功能,而无需额外的配置。同时starter还会提供给我们预留的自定配置选项,使用者只需要在application.properties中设置相关参数,就可以实现配置的个性化。个人理解认为springBoot Starter就是一个智能化的配置类@Configuration。

原理

在这里插入图片描述
引入maven依赖及配置文件:
1) SpringBoot 在启动时会去依赖的starter包中寻找 resources/META-INF/spring.factories 文件,然后根据spring.factories文件中的配置Jar包去扫描项目所依赖的Jar包,找到需要自动配置的类。
2)根据 spring.factories配置加载AutoConfigure类。
3)根据 @Conditional注解的条件,进行自动配置并将Bean注入Spring Context 上下文当中。
配置类上面包括以下注解:
@Configuration 表明是一个配置文件,被注解的类将成为一个bean配置类。
@ConditionalOnClass 当classpath下发现该类的情况下进行自动配置。
@ConditionalOnBean 当classpath下发现该类的情况下进行自动配置。
@EnableConfigurationProperties 使@ConfigurationProperties注解生效。
@AutoConfigureAfter 完成自动配置后实例化这个bean。

3、springboot的核心注解及作用

SpringBoot主要有三个核心注解:
SpringBootConfiguration、EnableAutoConfiguration、ComponentScan,依赖这几个注解可以完成自动装配的功能,将项目中需要的Bean注入到Spring容器里面。
SpringBoot程序在启动过程中会解析以下三个注解:
1)SpringBootConfiguration:包含了Configuration注解,实现配置文件,相当于spring中的XML配置文件的applicationContext.xml。
2)ComponentScan:指定扫描范围, 可自动发现和装配Bean,默认扫描SpringBootApplication注解类所在的包路径下文件,所以最好将该启动类放到根包路径下。
3)EnableAutoConfiguration:SpringBoot根据应用所声明的依赖来对Spring框架进行自动配置功能。

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-09-15 01:51:23  更:2022-09-15 01:53:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 13:29:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码