SpringBoot——基础知识及相关面试题

1. SpringBoot概述

1.1 背景

​ 多年来,随着新功能的增加,Spring 变得越来越复杂。若启动一个新的Spring项目,必须添加构建路径或添加 Maven 依赖关系、配置应 用程序服务器、添加 spring 配置。

​ SpringBoot是解决这个问题的方法。SpringBoot建立在现有spring框架之上。使用 spring 启动,避免 了之前必须做的所有样板代码和配置 。因此, SpringBoot可以帮助我们以很多的工作量, 更加健壮地使用现有的Spring功能。

1.2 SpringBoot特点

  1. 独立运行

    Spring Boot内嵌了各种servlet容器,Tomcat、Jetty等,不再需要打成war包部署到容器中,Spring Boot只要打成一个可执行的jar包就能独立运行,所有的依赖包都在一个jar包内。

  2. 简化配置

    spring-boot-starter-web启动器自动依赖其他组件,简少了maven的配置。

  3. 自动配置

    Spring Boot能根据当前类路径下的类、jar包来自动配置bean,如添加一个spring-boot-starter-web启动器就能拥有web的功能,无需其他配置。

  4. 无代码生成和XML配置

    Spring Boot配置过程中无代码生成,也无需XML配置文件就能完成所有配置工作,这一切都是借助于条件注解完成的,这也是其核心功能之一。

  5. 应用监控

    Spring Boot提供一系列端点可以监控服务及应用,做健康检测。

1.3 SpringBoot的优点

  1. 减少开发和测试的时间。

  2. 使用 JavaConfig 有助于避免使用 XML配置文件的编写。

  3. 避免大量的 Maven 导入和各种版本冲突。

  4. 通过提供默认值快速开始开发。

  5. 没有单独的 Web 服务器需要。这意味着不再需要启动 Tomcat,Glassfish或其他任何东西。

  6. 需要更少的配置。因为没有 web.xml 文件。只需添加用@Configuration注解的类,然后添加用@Bean注解的方法,Spring 将自动加载对象并像以前一样对其进行管理。甚至可以将@Autowired 添加到 bean 方法中,使 Spring 自动装入需要的依赖关中。

  7. 基于环境的配置使用这些属性,可以将正在使用的环境传递到应用程序:-Dspring.profiles.active = {enviornment}。

    在加载主应用程序属性文件后,Spring 将在(application{environment} .properties)中加载后续的应用程序属性文件。

2. SpringBoot项目创建

在这里插入图片描述
在这里插入图片描述

3. SpringBoot的基础知识点

3.1 application配置文件

3.1.1 配置文件的两种格式

如下图所示,为SpringBoot项目的总配置文件。配置文件分为两种,一种为properities后缀,一种为yaml后缀。

两种格式的配置文件中,properties的优先级更高。接下来将分别介绍两个文件格式的语法。

在这里插入图片描述

① properties配置文件
# key=value---注释
server.port=8080
server.servlet.context-path=/aaa
② yaml配置文件

注意:value值需要和冒号留一个空格,这是语法格式。

# 设定端口号、访问路径
server:
  port: 8080
  servlet:
    context-path: /ykx

# 设置属性值
student:
  name: ykx
  age: 18
  sex: man
  hobby: running, reading, writing

个人更喜欢yaml配置文件,层级更加清晰。

3.1.2 profile多环境配置

注意,在实际开发中,在不同的阶段,例如开发、测试、生产等,项目使用的配置文件也各不相同。

在SpringBoot项目中,可以为其不同阶段分别创建其适合的配置文件,只需要在总配置文件中激活即可。

除了下图展示的一种激活方式外,还可以使用cmd命令行的方式,使用如下命令:

java –jar xxx1.jar --spring.profiles.active=xxx2 (xxx1表示jar的名称;xxx2表示激活环境)

在这里插入图片描述

3.1.3 配置文件常用设置

# 设定端口号、访问路径
server:
  port: 8080
  servlet:
    context-path: /ykx

# 设置实体属性值
student:
  name: ykx
  age: 18
  sex: man
  hobby: running, reading, writing

# 激活配置文件
spring:
  profiles:
    active: test

3.1.4 读取配置文件

我们习惯把一些自己的信息放入配置文件中,便于修改。比如OSS. 支付。 我们还希望通过java代码能够读取到配置文件中自己的信息。springboot提供了两种方式用于读取springboot配置文件中信息的方式。

① @ConfigurationProperties

使用在类上 @ConfigurationProperties(prefix=“前缀”) – 表示读取配置文件中以”前缀“开头的属性值。

实体类

@Component //将对象交给spring创建
@Data
@ConfigurationProperties(prefix = "student")//读取属性文件中student前缀的值
public class
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值