簡體   English   中英

Java-具有層次結構的配置/信息管理

[英]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 *入門指南》HTMLPDF )的第2章(“ Config4 *語法概述”)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM