1、读取自定义属性
先自定义一个类,继承PropertyDefinerBase类
public class LogIpConfig extends PropertyDefinerBase {
private static String LOCAL_IP = null;
@Override
public String getPropertyValue() {
try {
LOCAL_IP= InetAddress.getLocalHost().getHostAddress();
System.out.println("get ip success----------:"+LOCAL_IP);
} catch (UnknownHostException e) {
System.out.println("获取ip异常");
}
return LOCAL_IP;
}
}
在logback-spring.xml文件中添加自定义标签(一定要定义在使用位置前,建议在文件顶部,否则会读取不到)
<define name="localIp" class="com.ai.cas.config.LogIpConfig"/>
在需要使用的地方直接${localIp}即可
读取application.yml配置文件中的属性
<springProperty scope="context" name="provincePath" source="province.value"/>
直接使用上面的标签读取即可,使用时是${provincePath}
此时一定要写成logback-spring.xml,因为application.xml的读取会落后于logback.xml,logback-spring.xml则优先一些。