W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
前面演示的大量 Hasor 的配置文件內(nèi)部機制,同時也像我們展示了 Hasor 讀取配置文件就是一個簡單的表達式(例:hasor.packages
)
現(xiàn)在我們設(shè)想一下這樣的一組配置信息,我想讀取所有的 module :
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://project.hasor.net/hasor/schema/main">
<hasor>
...
<modules loadModule="${HASOR_LOAD_MODULE}" loadErrorShow="true">
<module>net.hasor.web.valid.ValidWebPlugin</module>
<module>net.hasor.web.render.RenderWebPlugin</module>
<module>net.hasor.plugins.startup.StartupModule</module>
<module>net.hasor.plugins.aop.AopModule</module>
</modules>
...
</hasor>
</config>
下面就介紹一下如何讀取這種配置,首先讀取這樣的配置信息主要有兩種方法:
方法一:通過父節(jié)點解析Xml信息,具體如下:
XmlNode modules = env.getSettings().getXmlNode("hasor.modules");
List<XmlNode> allModule = modules.getChildren("module");
for (XmlNode modInfo : allModule){
modInfo.getText();
}
方法二:考慮到我們的例子中 module
節(jié)點并沒有定義特殊的屬性,因此可以進一步從上面代碼簡化成如下:
XmlNode[] allModule = env.getSettings().getXmlNodeArray("hasor.modules.module");
for (XmlNode modInfo : allModule){
modInfo.getText();
}
我們在方法二的基礎(chǔ)上還可以在進一步簡化成一行代碼如下:
String[] allModules = env.getSettings().getStringArray("hasor.modules.module");
Hasor 的配置文件讀取十分強大,更多強大的方法,請開發(fā)者自行嘗試:Settings
接口。獲取這個接口的方式很多,您可以依賴注入,也可以通過 ApiBinder 接口拿到,也可以通過 AppContxt 接口獲取。這里不在詳解。
Hasor 的配置文件解析機制,好的是它可以獨立 Hasor 使用。您可以單獨使用 net.hasor.core.setting.InputStreamSettings
類去加載您的 xml 文件,然后以 Hasor 的方式去處理它。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: