• spring面试题笔记


    SpringBoot 有几种读取配置文件的方式
    1.@value
    必须是bean里才能生效,,final或static无法生效

    2@ConfigurationProperties注解
    @ConfigurationProperties是springboot提供读取配置文件的一个注解

    注意:
    前缀定义了哪些外部属性将绑定到类的字段上
    根据 Spring Boot 宽松的绑定规则,类的属性名称必须与外部属性的名称匹配
    我们可以简单地用一个值初始化一个字段来定义一个默认值
    类本身可以是包私有的
    类的字段必须有公共 setter 方法
    这个prefix 必须小写,不然会报错
    在这里插入图片描述
    3
    在这里插入图片描述
    4.获取外部配置文件
    在这里插入图片描述
    5将流读取到Properties对象中在这里插入图片描述
    跨域解决
    1
    在这里插入图片描述
    2
    在这里插入图片描述
    SpringBoot项目启动慢,如何优化springboot的启动速度 ?
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    SpringBoot的默认日志实现框架是什么?怎么切换成别的?
    springboot默认使用logback作为日志记录框架,常见的日志记录框架有log4j、logback、log4j2。这篇文章我们来学习怎样将logbak替换为log4j2。
    一、为什么使用log4j2?
    我们在项目中经常使用一个叫SLF4J的依赖,它是做什么的呢?

    slf4j是对所有日志框架制定的一种规范、标准、接口,并不是一个框架的具体的实现,它的接口并不能独立使用,需要和具体的日志框架实现配合使用(如log4j、logback、log4j2)。
    log4j2使用了两种方式记录日志:AsyncAppender和AsyncLogger,上面我们的配置采用了AsyncLogger,性能最佳。
    1、AsyncAppender使用队列异步记录日志,但是一旦队列已满,appender线程需要等待。
    2、AsyncLogger是采用Disruptor,通过环形队列无阻塞队列作为缓冲,多生产者多线程的竞争是通过CAS实现,无锁化实现,可以降低极端大的日志量时候的延迟尖峰,Disruptor 可是号称一个线程里每秒处理600万订单的高性能队列。

    在这里插入图片描述

  • 相关阅读:
    锂电回收行业硫酸镍溶液除硅
    为什么 0.1+0.2 不等于 0.3
    【开发语言】C语言与Python的互操作详解
    一号店调用api实例讲解
    封装弹出框vue3
    sqli-labs(Less-5) updatexml闯关
    css笔记
    安卓APP(1)——安卓工程构建和第一APP运行
    148. SAP UI5 表格数据如何导出成 Excel 文件(Table Export As Excel)
    披头士最经典的那张唱片封面,竟是传奇哈苏所拍
  • 原文地址:https://blog.csdn.net/Alice_whj/article/details/134229634