SpringBoot的配置文件、日志文件

一、配置文件( .properties、.yml)

1、.properties 配置文件

1.1、格式

 1.2、基本语法

1.2.1、如:一般配置(以键值的形式配置的,key 和 value 之间是以“=”连接的。)

1.2.2、如:自定义配置(使用 @Value 进行读取)

PS:理论上,properties 和 yml 可以一起存在于一个项目中,但是若此时配置文件中出现了相同的配置,properties 配置文件的优先级会更高,加载完后才会加载 yml 配置文件。一般情况下,为了更高效的维护(降低故障率),一般都会只用一种配置文件格式。

2、.yml 配置文件

2.1、格式

2.2、基本语法

2.2.1、如:一般配置

 2.2.2、如:自定义配置

 (PS:要先把 properties配置文件中的注释才能运行 yml 配置文件)

 2.3、配置不同数据类型

 PS:验证单双引号的作用--(双引号会解析特殊字符)

 2.4、配置对象

结果:

 2.5、配置集合

  

 结果:

 3、yml 中多平台配置文件

也就是多环境配置文件,本地(开发环境dev)、服务器(发布环境prod、测试环境test)

 

结果:

4、properties 和 yml 的区别

(1)properties 是以 key=value 的形式配置的键值类型的配置⽂件,⽽ yml 使⽤的是类似json 格式的 树形配置⽅式进⾏配置的,yml 层级之间使⽤换⾏缩进的⽅式配置,key 和 value 之间使⽤“: ”英⽂ 冒号加空格的⽅式设置,并且空格不可省略。


(2)properties 为早期并且默认的配置⽂件格式,但其配置存在⼀定的冗余数据,使⽤ yml 可以很好的 解决数据冗余的问题。


(3)yml 通⽤性更好,⽀持更多语⾔,如 Java、Go、Python 等,如果是云服务器开发,可以使⽤⼀份 配置⽂件作为 Java 和 Go 的共同配置⽂件。


(4)yml 虽然可以和 properties 共存,但⼀个项⽬中建议使⽤统⼀的配置类型⽂件。


(5)yml 支持更多的数据类型。(yml 中的 value 支持整数, 浮点数, 字符串, 布尔值, 数组等类型)

PS:properties 和 yml本质上都是表示了键值对。使用 @value 注解可以在 java 代码中从 yml 里面读取配置值

 PS:更详细可参考:【Spring Boot】SpringBoot 配置文件详解_springboot配置文件有哪几种_吞吞吐吐大魔王的博客-CSDN博客

二、日志文件

1、日志的作用:

发现和定位问题;

记录用户登录日志,方便分析用户使正常登录还是恶意破解用户;

记录系统的操作日志,方便数据恢复和定位操作人;

记录程序的执行时间,方便为以后优化程序提供数据支持。

PS:System.out.println();// 不能代替日志:缺少一些信息(如打印的时间,打印线程的相关信息等);不能平分平台(日志过多会影响性能,日志过少会不利于定位问题)

 2、自定义打印日志

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;

import javax.annotation.PostConstruct;

//自定义打印日志---> 先得到日志对象,再通过这个对象打印日志
@Controller
public class LogController {
//    private static Logger logger= LoggerFactory.getLogger(LogController.class);//获得日志对象
    private Logger logger= LoggerFactory.getLogger(this.getClass());//获得日志对象

    @PostConstruct
     public void init(){//打印日志
        logger.info("I'm logger.....");
        System.out.println("I'm logger1.....");
     }
}

 PS:Logger 对象是属于 org.slf4j  包下的,要注意不能导错包。

PS:SpringBoot 中默认使用 slf4j 来打印日志。

3、日志的持久化

也就是打印出日志并保存起来。

3.1、通过配置路径

 PS:slf4j 默认文件超过10KB 就会进行分割,隔日也会进行分割。

3.2、通过配置文件名

PS:该方式也可以配置路径

4、日志的级别

trace:微量,少许的意思,级别最低;
debug:需要调试时候的关键信息打印;
info:普通的打印信息(默认⽇志级别);
warn:警告,不影响使⽤,但需要注意的问题;
error:错误信息,级别较⾼的错误⽇志信息;
fatal:致命的,因为代码异常导致程序退出执⾏的事件。

PS:顺序从上到下,越往下级别越高,越往下收到的消息越多。

PS:默认的级别是 info 级别。

 5、更简单的方式输出日志

我们可以通过 lombok 提供的 @Slf4j 注解和 log 对象快速的打印⾃定义⽇志。(添加依赖,使用注解)
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>

//或者以下方式
       <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.20</version>
            <optional>true</optional>
      </dependency>


 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值