📄 jmmrconfig.java.svn-base
字号:
package jm.form.msn.config;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Hashtable;
import javax.xml.stream.XMLEventReader;
import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.events.Characters;
import javax.xml.stream.events.StartElement;
import javax.xml.stream.events.XMLEvent;
/**
* 配置文件读取
* 梦界家园MSNP15
*
* @author ISHome
* @since 0.5.0.2
* @version 0.5.0.2.1
*/
public class JMMRConfig implements JMMRConfigConstants {
/**
* 获得配置信息内容
*/
public static Hashtable<String, String> getConfigs() throws Exception {
// 数据初始化
Hashtable<String, String> configMap = new Hashtable<String, String>();
// 读取主配置文件
configMap.putAll(getConfigs(CONFIG_SYSTEM_FILE));
// 获得系统配置信息
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_CONFIG)));
// 获得数据库配置信息
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_DATABASE)));
// 获得日志配置信息
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_LOG)));
// 获得第一次发送时候的欢迎信息等
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_WELCOME)));
// 商业接口命令帮助信息
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_COMMAND)));
// 获得系统使用的图片配置信息
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_IMG)));
// 获得分词字典信息
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_DIC)));
// 获得显示语言文本配置信息
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_LANG)));
// 获得系统图片样式配置文件
configMap.putAll(getConfigs(configMap.get(CONFIG_FILE_STYLES)));
// 读取当前语言信息
configMap.putAll(getConfigs(configMap.get(configMap.get(CONFIG_LANG))));
// 读取当前图片配置信息
configMap.putAll(getConfigs(configMap.get(configMap.get(CONFIG_STYLES))));
return configMap;
}
/**
* XML配置文件读取
*
* @param filename
* @return
*/
public static Hashtable<String, String> getConfigs(String filename) throws Exception {
Hashtable<String, String> configMap = new Hashtable<String, String>();
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
File file = new File(filename);
InputStream input = new FileInputStream(file);
XMLEventReader xmlEventReader = inputFactory.createXMLEventReader(input);
XMLEvent xmlEvent;
StartElement startElement;
Characters characters;
while (xmlEventReader.hasNext()) {
xmlEvent = xmlEventReader.nextEvent();
if (xmlEvent.isStartElement()) {
startElement = xmlEvent.asStartElement();
while (xmlEventReader.peek().isCharacters()) {
xmlEvent = xmlEventReader.nextEvent();
characters = xmlEvent.asCharacters();
if (!"".equals(characters.getData()))
configMap.put(startElement.getName().toString(), characters.getData());
}
}
}
configMap.put(CONFIG, "OK");
return configMap;
}
/**
* @param args
*/
public static void main(String[] args) {
try{
System.out.print(JMMRConfig.getConfigs());
}catch(Exception e){
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -