spring boot

1.介绍

Spring Boot是一套用于构建微服务的基础框架。其宗旨并非是要重写Spring或者是替代spring,而是希望通过设计大量的自动化配置等方式来简化Spring原有样板化的配置,使得开发者可以快速构建应用。

1.嵌入servlet容器
2.提供starter简化maven配置
3.自动配置spring
4.开箱即用,约定大于配置的两大策略
5.提供了一种快速使用spring的方式

1、简化spring应用的初始化和开发过程
2、使用spring框架集成的maven
3、Spring boot提供了许多启动器,只需要根据不同的场景导入不同的启动器即可
4、嵌入很多Servlet例如Tomcat、Jetty

2.两大策略

开箱即用

		提供了很多不同的启动器,只需要根据不同的场景选择启动器

约定大于配置

		是一种软件的约定范式

3.自动配置原理

首先,Spring Boot项目创建完成会默认生成一个名为 *application 的入口类,我们是通过该类的main方法启动Spring Boot项目的。在main方法中,通过Springapplication的静态方法,即run方法进行Springapplication类的实例化操作,然后再针对实例化对象调用另外一个run方法来完成整个项目的初始化和启动。Springapplication调用的run方法的大致流程:
1、获取SpringapplicationListener监听器;
2、启动所获取到的所有监听器;
3、初始化ConfigurableEnvironment(配置文件);
4、打印Banner图标;
5、创建容器ConfigurableapplicationContext;
6、准备容器ConfigurableapplicationContext;
7、初始化容器ConfigurableapplicationContext;
8、监听器通知容器启动完成;
9、监听器通知容器正在运行;

除了上述核心操作,run方法运行过程中还涉及启动时长统计、异常报告、启动日志、异常处理等辅助操作

4.启动器

Spring Boot的起步依赖(Starter Dependency)是一种特殊的依赖项,它们是为了快速构建特定类型的应用而设计的。起步依赖通过提供一组预定义的依赖项,简化了项目的依赖管理和配置。
起步依赖的命名遵循一定的规则,通常以spring-boot-starter-的形式命名,其中代表特定的功能或组件。例如,常见的起步依赖包括:
spring-boot-starter-web:用于构建Web应用程序的起步依赖,包含了常用的Web组件,如Spring MVC、Tomcat等。
spring-boot-starter-data-jpa:用于构建使用Spring Data JPA访问数据库的起步依赖。
spring-boot-starter-security:用于构建安全认证和授权功能的起步依赖。
spring-boot-starter-test:用于构建单元测试和集成测试的起步依赖。
使用起步依赖时,只需将相应的起步依赖添加到项目的依赖项中,Spring Boot会自动引入所需的依赖项,并进行自动配置。这样,开发者无需手动引入和管理每个依赖项,可以更快速地搭建和开发应用程序。

5.配置文件加载顺序

bootstrap.yml -->bootstrap.properties -->application.yml -->application.properties

在配置文件中,可以使用以下方式进行配置:

  1. .properties文件:使用key=value的格式进行配置。
server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
  1. .yml文件:使用缩进和冒号的格式进行配置。
Copy code
server:
  port: 8080
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb

使用:
配置文件中的配置项可以在代码中通过@Value注解进行注入和使用。例如:

Copy code
@Value("${server.port}")
private int port;

这样就可以将配置文件中的server.port属性值注入到port变量中。

同时,Spring Boot还支持根据不同的环境加载不同的配置文件,例如application-dev.properties用于开发环境,application-prod.properties用于生产环境。可以通过设置spring.profiles.active属性指定当前使用的环境,例如在application.properties中设置:

spring.profiles.active=dev

这样在开发环境中就会加载application-dev.properties文件中的配置。

6.运行Spring Boot有哪几种方式

1、打包用命令或者放到容器中运行
2、用maven/Gradle插件运行
3、直接运行main方法运行

7.Spring Boot创建定时任务

有三种创建定时任务的方式

1、基于注解@Scheduled
2、基于接口(SchedulingConfigurer)
3、基于注解设定多线程定时任务

8.常用注解

  1. Spring Boot中常用的注解有哪些

在Spring Boot中,常用的注解包括:
@SpringBootApplication:用于标注主启动类,表示该类是Spring Boot应用程序的入口。
@Controller:用于标注控制器类,处理HTTP请求并返回响应。
@RestController:是@Controller的增强版,结合了@Controller和@ResponseBody,用于标注RESTful风格的控制器类。
@RequestMapping:用于映射请求URL和处理方法,指定HTTP请求的处理路径。
@Autowired:用于自动注入依赖对象,省略了繁琐的手动配置。
@Value:用于注入配置文件中的属性值。
@Component:用于标注组件类,表示被Spring容器管理。
@Configuration:用于标注配置类,声明该类为Spring的配置类,可以通过Java代码定义Bean。
@EnableAutoConfiguration:启用Spring Boot的自动配置机制。
@EnableConfigurationProperties:用于启用配置属性绑定。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值