gpt4 book ai didi

logback - 如何为 logback 实现 PropertyDefiner 以访问多个属性

转载 作者:行者123 更新时间:2023-12-04 05:40:02 24 4
gpt4 key购买 nike

我想在我的 logback.xml 配置文件中定义一些属性,并通过实现 PropertyDefiner 看到了。是以可定制的方式设置属性的好方法。

在开始实现它之后,我开始想知道如何访问标签内元素的名称属性的值。反正我看不到这样做,我在挠头。这个 PropertyDefiner 真的会让你为每个属性创建一个新的实现吗?为什么不直接硬编码呢?我在网上没有看到太多关于这个的讨论。

我希望我只是没有看到它,并且 stackoverflow 的大脑可以帮助我。有谁知道如何做到这一点?谢谢!

我找到了 discussion : 基本上问了同样的问题,但没有返回答案。

仅供引用:我想自定义获取属性的方式,因为我是从数据库中提取属性的。我有一个助手类,它在服务器启动时拉入属性。这些属性因环境(开发、测试、产品等)而异

最佳答案

从 logback 版本 1.0.6 开始,无法直接访问 name 属性的值。但是,没有什么能阻止您在您选择的属性中传递 name 属性的值。例子:

<define name="rootLevel" class="Your.PropertyDefiner">
<myKey>rootLevel</myKey>
</define>

在哪里 myKeyYour.PropertyDefiner 的属性.例如:
class Your.PropertyDefiner implements PropertyDefiner {   
String myKey;
public void setMyKey(String k) {
this.myKey= k;
}
public String getPropertyValue() {
return ...
}
}

logback 的配置框架 Joran 负责接线。 Joran 会将 myKey 元素的值注入(inject)到 Your.PropertyDefiner 的 myKey 属性中。 .如果您对技术细节感到好奇,请参阅 implicit actions 上的文档。和 implicit actions in practice .

关于logback - 如何为 logback 实现 PropertyDefiner 以访问多个属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11370666/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com