configreader.java

来自「新闻发布系统」· Java 代码 · 共 75 行

JAVA
75
字号
package oa.main;

import org.jdom.input.SAXBuilder;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import java.util.List;
import java.awt.Color;

/**
 * @author zjm
 * @since 2003-05-22
 */
public class ConfigReader
{

    public ConfigReader(String configFileName)
    {
        parseConfigXML(configFileName);
    }

    public void parseConfigXML(String configURI)
    {
		System.out.println("\r\n==============================================================================");
        System.out.println("\r\n正在读取配置文件: "+configURI+" ......");
        try
        {
            SAXBuilder builder = new SAXBuilder(false);
            Document doc = builder.build("file:///"+configURI);
            Element root = doc.getRootElement();

			/**连接池配置*/
			Configuration.ConnectionPoolFor = root.getChild("database").getChild("poolfor").getTextTrim();
            Configuration.ConnectionPoolName = root.getChild("database").getChild("poolname").getTextTrim();
            Configuration.DB_URL = root.getChild("database").getChild("url").getTextTrim();
            Configuration.DB_JDBCDRIVER = root.getChild("database").getChild("jdbcdriver").getTextTrim();
            Configuration.DB_USERNAME = root.getChild("database").getChild("dbusername").getTextTrim();
            Configuration.DB_PASSWORD = root.getChild("database").getChild("dbpassword").getTextTrim();
            Configuration.DB_MAXCONNNUM = root.getChild("database").getChild("maxconnection").getTextTrim();
            Configuration.DB_LOGFILE = root.getChild("database").getChild("logfile").getTextTrim();

			/**间隔期*/
            Configuration.TimerDelay = Integer.parseInt(root.getChild("timer").getChildTextTrim("default_refresh_interval"));
            Configuration.PageRefreshRate = Integer.parseInt(root.getChild("timer").getChild("page_refresh_rate").getTextTrim());
            Configuration.WarningDelayInterval = Integer.parseInt(root.getChild("timer").getChild("warning_remain_interval").getTextTrim());
            Configuration.DataManageInterval = Integer.parseInt(root.getChild("timer").getChild("data_manage_interval").getTextTrim());
	
			/**每页显示历史纪录的条数*/
            Configuration.Number_shown = Integer.parseInt(root.getChild("page").getChild("number_shown").getTextTrim());
			
			System.out.println("\r\n读取配置文件完成!");
			System.out.println("\r\n正在记录日志文件: "+Configuration.DB_LOGFILE+" ......");

			/**初始化连接池*/
			Configuration.connMgr = DBConnectionManager.getInstance();
			System.out.println("\r\n正在初始化: "+Configuration.ConnectionPoolFor+" 连接池: "+Configuration.ConnectionPoolName+" ......");
            System.out.println("\r\n初始化连接池连接数: "+Configuration.DB_MAXCONNNUM+" !");
			System.out.println("\r\n==============================================================================\r\n");

        }
        catch(JDOMException jdome)
        {
            System.err.println("读取配置文件失败!");
            jdome.printStackTrace();
        }
    }

    public static void main(String[] args)
    {
        //ConfigReader configReader = new ConfigReader("c:\\hg\\WEB-INF\\conf.xml");
        new ConfigReader("c:/hg/WEB-INF/conf.xml");
    }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?