[英]Java - Configuration/ information Management with hierarchy
我正在尋找一個Java工具來管理我的客戶端配置/信息。 我的客戶可能有子品牌,因此在這種情況下,某些屬性需要繼承或覆蓋。
這是一個簡單的配置示例:
Client 1
{
address: Chicago USA
Phone: 001.....
Client 1.1
{
address: LA USA
}
Client 1.2
{
Phone: 005.....
}
}
因此,如果您要獲取客戶端1.1,則會得到:
Client 1.1
{
address: LA USA
Phone: 001.....
}
當獲取客戶端1.2時,您將獲得: Client 1.2 { address: Chicago USA Phone: 005..... }
感謝您的幫助
通過考慮范圍,可以圍繞幾種配置文件語法(例如XML或Java屬性文件)中的任何一種編寫一個精簡包裝器類,從而實現所需的功能。 使用“。” 作為范圍運算符,“ xyz”表示范圍“ xy”中的變量“ z”。 (如果使用XML,則嵌套作用域與嵌套元素相對應。)要實現lookup(String scope, String localName)
操作。 此操作最初將在指定scope
查找localName
。 如果變量不存在那里,那么操作將查找的父作用域scope
,並保持向外致力於在全球范圍內。 因此,調用lookup("xy", "z")
將嘗試找到變量xyz
,然后是xz
,然后是z
。
解決該問題的另一種方法是使用Config4J配置文件解析器(由我編寫)。 特別是, @
@copyFrom
命令(在Config4J中,所有關鍵字都以@
開頭,以避免關鍵字與標識符沖突)使您可以將一個作用域的內容復制到另一個作用域。 這提供了重用配置信息的機制。 有關詳細信息,請參見《 Config4 *入門指南》 ( HTML , PDF )的第2章(“ Config4 *語法概述”)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.