Spring boot 中 logback 配置<springProperty> 读取application.properties 中的属性

Spring Boot 中 logback 读取application.properties 中的属性

其中使用的时候发现了一个问题,就是如果使用的lobback配置文件的名称是logback.xml 会先出现先找不到设置的属性,然后项目启动起来才会找到,
比如:

<springProperty scope="context" name="log.path" source="logback.path" defaultValue="logs"/>

记录日志文件存放地址属性,会在项目启动的时候想出现一个找不到log.path_is_UNDIFIND 的目录,项目启动起来后才会读取到属性,在配置路径上生成日志文件。
可以通过将logback.xml 文件名称修改为logback-spring.xml 就不会出现这个情况。
SpringBoot 配置文件的加载顺序

logback.xml—>application.properties—>logback-spring.xml.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.18</version> <relativePath/> </parent> <groupId>com.hvlink</groupId> <artifactId>hv-link-backend</artifactId> <version>1.0</version> <packaging>pom</packaging> <name>hv-link-backend</name> <modules> <module>common</module> <module>gateway</module> <module>order-service</module> <module>monitor</module> <module>dao</module> <module>master-data-service</module> <module>system-service</module> <module>asn-service</module> </modules> <properties> <java.version>1.8</java.version> <spring-cloud.version>2021.0.9</spring-cloud.version> <spring-cloud-alibaba.version>2021.0.5.0</spring-cloud-alibaba.version> <mybatis-plus.version>3.5.3.1</mybatis-plus.version> <sqlserver.version>12.4.1.jre8</sqlserver.version> <spring-boot-admin.version>2.7.10</spring-boot-admin.version> <druid.version>1.2.20</druid.version> <commons-pool2.version>2.11.1</commons-pool2.version> <guava.version>20.0</guava.version> </properties> <dependencyManagement> <dependencies> <!-- Spring Cloud Alibaba --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>${spring-cloud-alibaba.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- Spring Cloud --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- SQL Server + MyBatisPlus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>${mybatis-plus.version}</version> </dependency> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>${sqlserver.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>${druid.version}</version> </dependency> <!-- Redis连接池 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>${commons-pool2.version}</version> </dependency> <!-- Spring Boot Admin(监控依赖) --> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> <version>${spring-boot-admin.version}</version> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> <version>${spring-boot-admin.version}</version> </dependency> <dependency> <groupId>com.hvlink</groupId> <artifactId>common</artifactId> <version>1.0</version> </dependency> <dependency> <groupId>com.hvlink</groupId> <artifactId>dao</artifactId> <version>1.0</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>${guava.version}</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </dependency> </dependencies> </project> 我现在的pom.xml 配置是这样的,应该怎么修改
最新发布
10-12
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值