Springboot — 知识点小结(学习、面试必备)

112 篇文章 0 订阅
37 篇文章 2 订阅

1. SpringBoot 简介

SpringBoot 是简化 Spring 应用开发的一个框架。他整合了 Spring 的技术栈,提供各种标准化的默认配置。使得我们可以快速开发 Spring 项目,免掉 xml 配置的麻烦。降低 Spring 项目的成本。

2. SpringBoot 的优缺点

使编码配置部署都变得很简单。缺点可能就是自动注入的 bean ,不是特别清楚,有可能会冲突。

由于篇幅有限,这里只展示一部分,完整版我已经整理成了文档,有需要的朋友可以点一点下方链接免费领取

链接:1103806531暗号:CSDN

在这里插入图片描述

3. SpringBoot 如何固定版本

一种是 parenet 的时候直接固定。

一种是通过 dependcy 来固定,因为可能当前项目已经有父项目。

在这里插入图片描述

4. SpringBoot 的使用方式

maven 中父项目导入 Springboot 的启动器。然后编写一个主程序打上 SpringBootApplication 注解。通过 run 方法就可以启动。

5. SpringBoot 自动配置原理

首先可以看到启动类上面有一个 SpringBootApplication 注解,点进去之后,又 EnableAutoConfiguration 注解。然后再进去,发现有个 @Import 注解,其导入的是 EnableAutoConfigurationImportSelector 类。再看这个类,他是集成了一个抽象的 AutoConfigutationimportSelector 。再往上就是接口 ImportSelector 。然后如果实现了接口的 selectImport 接口就会将其中的返回的数组全部加载到 Spring 容器中。其中实现的最主要的地方是 getCandidateConfigurations 方法。那个方法内部实现就是回去读取 meta-inf 下的 spring.factories 。所以主要在那里面配置的类就都会被自动加载。

6. SpringBoot 配置文件注入

在这里插入图片描述
注入实体类中,实体类可以使用 @ConfigurationProperties(prefix = “person”) 注解。

在这里插入图片描述

7. @Value 和 @ConfigurationProperties 比较

在这里插入图片描述

8.@PropertySource

加载指定的配置文件。如下,如果不声明的话,将从主配置文件加载。

在这里插入图片描述

9. SpringBoot 外部配置文件加载顺序

这个挺多的,我们就几个重要的。

高优先级的会覆盖低优先级的。

命令行上的参数配置是优先级最高的。

jar 包外的带 profile 的配置文件。

jar 包内的带 profile 的配置文件。

jar 包外的不带 profile 的配置文件。

jar 包内的不带 profile 的配置文件。

10. Springboot 日志关系

SpringBoot 默认使用的 slf4j+logback 。引入 logging-starter 就可以使用。能自动适配其他日志。只需要将日志里面的 commons-logging 移除。就会自动引入其他日志。

使用 LoggerFactory 可以获得 logger 。通过 logger 就可以记录日志。

日志的一些配置

logging.level.com.atguigu=trace 指定打印级别

logging.file=G:/springboot.log 指定日志生成路径

logging.path=/spring/log 指定日志生成相对路径

logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} - %msg%n 指定控制台输出格式

logging.pattern.file=%d{yyyy-MM-dd} === [%thread] === %-5level === %logger{50} ==== 指定文件中日志输出格式

11. SpringBoot 热部署

jrebal 是收费的。

一般使用 springboot-dev-tool 。通过 ctrl+f9 进行热部署。开启 idea 的自动编译。

12. SpringBoot 的监控

引入 actuatro 的监控器。配置文件需要配置安全关闭。 management.security.enabled=false 。可以配置 endpoint 的 shutdown 的 enable 开启,就可以直接关闭了。

13. SpringBoot 整合 redis

引入 redis 的启动器。 data-redis 。引入后再配置文件进行配置 redis 的 host 。然后通过 redistemplate 就可以进行操作了。会乱码,默认使用的是 jdk 的序列化 json 器。需要改成 jackson 。自己实现一个 RedisTmeplate 。泛型为 object , object 。再实现 CacheManager 。就会发现缓存变成 json 形式了。

在这里插入图片描述

最后

为大家整理了各个知识点模块整理文档(微服务、数据库、mysql、jvm、Redis等都有)和更多大厂面试真题,有需要的朋友可以点一点下方链接免费领取

链接:1103806531暗号:CSDN

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

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值