📄 configure.java
字号:
/*
* Created on 2005-4-20
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package com.swing.server.cfg;
import java.io.File;
import java.net.MalformedURLException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import com.swing.server.common.Globals;
/**
* @author vampire_a
*
* TODO To change the template for this generated type comment go to Window -
* Preferences - Java - Code Style - Code Templates
*/
public class Configure {
private static Configure instance = null;
private static final Object lock = Configure.class;
private Logger log = Logger.getLogger("Configure");
private final Map container = new HashMap();
public static Configure getConfigure() {
synchronized (lock) {
if (instance == null)
instance = new Configure();
return instance;
}
}
private Configure() {
String path = System.getProperty("user.dir");
log.info(path);
PropertyConfigurator.configure(Globals.LOG4J_FILE);
log.info("Loading Configure Files");
File f = new File(Globals.CONFIG_PATH);
File[] files = f.listFiles();
if (files == null) {
log.error("error getting GameController directory");
return;
}
for (int i = 0; (i < files.length); i++) {
String file = files[i].getName();
if (file.indexOf(".cfg.xml") == -1)
continue;
loadInfo(file);
log.info("loaded configure file named: " + file);
}
}
private void loadInfo(String file) {
try {
SAXReader reader = new SAXReader();
Document document = reader
.read(new File(Globals.CONFIG_PATH + file));
Element root = document.getRootElement();
List l = root.selectNodes("./Element");
Map map = new HashMap();
for (Iterator iter = l.iterator(); iter.hasNext();) {
Element e = (Element) iter.next();
map.put(e.attributeValue("id"), e.attributeValue("value"));
}
this.container.put(file.substring(0, file.indexOf(".cfg")), map);
} catch (DocumentException de) {
log.error("Error loading configure from file: " + file, de);
} catch (MalformedURLException mue) {
log.error("Error loading configure from file: " + file, mue);
}
}
public Map getConfig(String name) {
return (Map) this.container.get(name);
}
public void reloadInfo(String fileName) {
this.loadInfo(fileName);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -