当前位置: 首页 > news >正文

《SpringBoot+Vue》Chapter01_SpringBoot介绍

SpringBoot的介绍

简单来说,SpringBoot就是Spring提供的用于Web开发的脚手架框架。配置简单、上手快速

SpringBoot的特性

  • 自带tomcat、Jetty服务器可以部署war包
  • 自动配置Spring框架和第三方框架
  • 能够提供应用的健康监控和配置的监控
  • 没有代码生成,并且尽可能的减少了xml等的配置

SpringBoot的创建

在线创建

通过 start.spring.io 来创建


springboot在线创建

通过idea创建

创建maven工程项目

添加maven依赖

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.4.RELEASE</version>
</parent>
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
</dependencies>

添加启动类

@EnableAutoConfiguration
@RestController
public class App {public static void main(String[] args) {SpringApplication.run(App.class, args);}@GetMapping("/hello")public String hello() {return "hello";}
}

SpringBoot的相关知识点分析

@SpringBootApplication

@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters = {@Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),@Filter(type = FilterType.CUSTOM,classes = AutoConfigurationExcludeFilter.class) })

@Configuration

SpringBoot加载时会加载很多的后置处理器,各种后置处理器完成各种处理功能。其中有一个后置处理器ConfigurationClassPostProcessor。这个后置处理器就是专门负责处理带@Configuration的类。所以在SpringBoot加载的时候加载到所有带有@Configuration标记的类,在类中使用了一个代理类来增强了被@Configuration标记的类。原来的类会被增强的类替换。被代理的类执行的时候会执行一个BeanMethodInterceptor拦截器,在拦截器中会拦截加了@Bean的方法,然后会判断@Bean方法的Bean是否被创建。如果创建了就会直接返回。没有Bean就会创建。所以@Configuration标记的类创建的对象是同一个对象。
如果没有使用@Configuration,使用的是@Component,那么这个类就没有被增强没有被代理,那这个类就是普通的类,就会和普通类一样创建对象,创建的就不一定是同一个对象

SpringBoot的Parent

SpringBoot的Parent完成了以下的功能,使得我们的项目继承SpringBootParent后可以直接省略这些步骤

  1. 定义Java的编译版本
  2. 定义项目编码格式
  3. 定义依赖的版本号
  4. 项目打包的配置
  5. 资源文件的过滤

SpringBootParent使用的两种方式

  • 第一种 直接继承SpringBootParent
  <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.4.RELEASE</version></parent>
  • 第二种在项目中使用SpringBootDependencies
    当我们的项目不方便继承SpringBootParent或者我们需要继承自己的Parent的时候,我们可以使用SpringBootDependencies
<dependencyManagement><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
最后编辑于:2024-09-09 20:07:33


喜欢的朋友记得点赞、收藏、关注哦!!!


http://www.mrgr.cn/news/27555.html

相关文章:

  • AE抠像roto添加和删除区域以及渲染导出
  • 蓝桥杯备赛(持续更新)
  • Docker的基本概念、安装步骤以及一些简单的用法
  • Spring Boot 中使用 @Transactional 注解配置事务管理
  • OSError: [Errno 22] Invalid argument: ‘D:\\Desktop\\S\\SMTRY2\r.txt‘
  • 离散:消解与归结规则的使用 例子详细分析
  • 安全通信网络等保
  • 【在Linux世界中追寻伟大的One Piece】网络命令|验证UDP
  • 俄罗斯方块——C语言实践(Dev-Cpp)
  • 开源PHP免费家谱应用Webtrees简介
  • 【Python基础】Python错误和异常处理(详细实例)
  • 【STM32 HAL库】IIC通信与CubeMX配置
  • 探索信号处理:使用傅里叶小波变换分析和恢复信号
  • hadoop3跑第一个例子wordcount
  • สำรวจโลกที่ลึกลับของไพ่ยิปซี
  • linux命令学习-sed命令
  • 时序数据库 TDengine 的入门体验和操作记录
  • 微型导轨在光学仪器中的应用!
  • Semaphore UI --Ansible webui
  • 每日一题——第八十八题
  • Day26_0.1基础学习MATLAB学习小技巧总结(26)——数据插值
  • 机器学习课程学习周报十二
  • Unity-Transform类-缩放和看向
  • 【网络安全的神秘世界】ssrf服务端请求伪造
  • 103.WEB渗透测试-信息收集-FOFA语法(3)
  • Acwing 双链表