⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sysinfo.java

📁 天乙代码src_531.rar 天乙代码src_531.rar 天乙代码src_531.rar 天乙代码src_531.rar
💻 JAVA
字号:
package com.laoer.bbscs.sysinfo;

/**
 * <p>Title: ��������V5.0</p>
 * <p>Description: BBS-CS��������V5.0</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: laoer.com</p>
 * @author ������
 * @version 5.0
 */

import org.jdom.*;
import org.jdom.input.*;
import java.io.*;
import java.util.*;
import org.apache.log4j.*;

public class SysInfo {

  static Logger logger = Logger.getLogger(SysInfo.class.getName());
  static private SysInfo instance;

  //public String WEBSITENAME = "";
  //public String WEBSITEURL = "";
  public String VERSION = "5.3.1";
  public String OS = "";
  public String WEBPATH = "";
  public String FILEPATH = "";
  public String FILEORDB = "";

  public String SYSLOG = "";
  public String CHARSET = "";
  public String LANGUAGE = "";
  public String COUNTRY = "";
  public String HTMLEDIT = "";
  public String UPIMG = "";
  public int UPIMGSIZE = 100;
  //public String AUTHCODE = "yes";
  public int FORUMPERNUM = 20;
  public int POSTPERNUM = 10;
  public int PORT = 8848;
  public String DBDRIVERS = "";
  public String SINGLESERVER = "yes";
  public String MAINSERVER = "yes";
  public String ROOTWEBPATH = "/";
  public long SESSIONOVERTIME = 1800000;
  public String INDEXALL = "yes";
  public long INDEXTIME = 3600000;
  public int POSTMAXSIZE = 20;
  public int CACHEMAXSIZE = 2048 * 1024;
  public long CACHEMAXLIFETIME = 360 * 60000;
  public String MAIL = "";
  public String SMTP = "";
  public String MAILUSER = "";
  public String MAILPASSWD = "";
  public String DBTYPE = "";
  public String DBPAGECLASS = "";
  public String DEFAULTDB = "";
  public String USEAPPDBPOOL = "no";
  public String LOCALHOST = "";
  public ArrayList SERVERS = new ArrayList();
  public ArrayList SERVERSIP = new ArrayList();
  public ArrayList SERVERSURL = new ArrayList();
  public ArrayList DATABASE = new ArrayList();
  public Hashtable DBPOOLS = new Hashtable();
  public ArrayList ADV = new ArrayList();

  public SysInfo() {
    init();
  }

  public static synchronized SysInfo getInstance() {
    if (instance == null) {
      instance = new SysInfo();
    }
    return instance;
  }

  public void init() {
    try {
      SAXBuilder sb = new SAXBuilder();
      Document doc = sb.build(getClass().getResourceAsStream("bbscs.xml"));
      Element root = doc.getRootElement();
      //this.WEBSITENAME = root.getChild("websitename").getTextTrim();
      //this.WEBSITEURL = root.getChild("websiteurl").getTextTrim();
      this.OS = root.getChild("OS").getTextTrim().toLowerCase();
      this.WEBPATH = root.getChild("webpath").getTextTrim();
      if (!this.WEBPATH.endsWith("/")) {
        this.WEBPATH = this.WEBPATH + "/";
      }
      this.FILEPATH = root.getChild("filepath").getTextTrim();
      if (!this.FILEPATH.endsWith("/")) {
        this.FILEPATH = this.FILEPATH + "/";
      }
      this.FILEORDB = root.getChild("fileordb").getTextTrim();
      this.SYSLOG = root.getChild("syslog").getTextTrim();
      this.CHARSET = root.getChild("charset").getTextTrim();
      this.LANGUAGE = root.getChild("language").getTextTrim();
      this.COUNTRY = root.getChild("country").getTextTrim();
      this.HTMLEDIT = root.getChild("htmledit").getTextTrim();
      this.UPIMG = root.getChild("upimg").getTextTrim();
      this.UPIMGSIZE = Integer.parseInt(root.getChild("upimgsize").getTextTrim());
      /*
             if (!this.OS.equals("windows")) {
        this.AUTHCODE = root.getChild("authcode").getTextTrim();
             }*/
      this.FORUMPERNUM = Integer.parseInt(root.getChild("forumpernum").
                                          getTextTrim());
      this.POSTPERNUM = Integer.parseInt(root.getChild("postpernum").
                                         getTextTrim());
      this.SINGLESERVER = root.getChild("singleserver").getTextTrim();
      this.MAINSERVER = root.getChild("mainserver").getTextTrim();
      this.ROOTWEBPATH = root.getChild("rootwebpath").getTextTrim();
      if (!this.ROOTWEBPATH.startsWith("/")) {
        this.ROOTWEBPATH = "/" + this.ROOTWEBPATH;
      }
      if (!this.ROOTWEBPATH.endsWith("/")) {
        this.ROOTWEBPATH = this.ROOTWEBPATH + "/";
      }
      this.PORT = Integer.parseInt(root.getChild("port").getTextTrim());
      this.SESSIONOVERTIME = Long.parseLong(root.getChild("sessionovertime").
                                            getTextTrim()) * 60 * 1000;
      this.INDEXALL = root.getChild("indexall").getTextTrim();
      this.INDEXTIME = Long.parseLong(root.getChild("indextime").getTextTrim()) *
          60 * 1000;
      this.POSTMAXSIZE = Integer.parseInt(root.getChild("postmaxsize").
                                          getTextTrim());
      this.CACHEMAXSIZE = Integer.parseInt(root.getChild("cachemaxsize").
                                           getTextTrim()) * 1024;
      this.CACHEMAXLIFETIME = Long.parseLong(root.getChild("cachemaxlifetime").
                                             getTextTrim()) * 60000;
      this.MAIL = root.getChild("mail").getTextTrim();
      this.SMTP = root.getChild("smtp").getTextTrim();
      this.MAILUSER = root.getChild("mailuser").getTextTrim();
      this.MAILPASSWD = root.getChild("mailpasswd").getTextTrim();
      this.DBTYPE = root.getChild("dbtype").getTextTrim();
      this.DBPAGECLASS = root.getChild("dbpageclass").getTextTrim();
      this.DBDRIVERS = root.getChild("dbdrivers").getTextTrim();
      this.DEFAULTDB = root.getChild("defaultdb").getTextTrim();
      this.USEAPPDBPOOL = root.getChild("useappdbpool").getTextTrim();
      Element databaseinfo = root.getChild("databaseinfo");
      java.util.List databaselist = databaseinfo.getChildren();
      String dbname = "";
      String connurl = "";
      String dbuser = "";
      String dbpassword = "";
      String maxconn = "";
      String[] databases = null;
      for (int i = 0; i < databaselist.size(); i++) {
        databases = new String[5];
        Element database = (Element) databaselist.get(i);
        dbname = database.getChild("dbname").getTextTrim();
        connurl = database.getChild("connurl").getTextTrim();
        dbuser = database.getChild("dbuser").getTextTrim();
        dbpassword = database.getChild("dbpassword").getTextTrim();
        maxconn = database.getChild("maxconn").getTextTrim();
        databases[0] = dbname;
        databases[1] = connurl;
        databases[2] = dbuser;
        databases[3] = dbpassword;
        databases[4] = maxconn;
        //logger.info(dbname + " " + connurl + " " + dbuser + " " + dbpassword);
        this.DATABASE.add(databases);
      }

      Element dbpools = root.getChild("dbpools");
      java.util.List dbpoolslist = dbpools.getChildren();
      String jndi = "";
      for (int i = 0; i < dbpoolslist.size(); i++) {
        Element dbpoole = (Element) dbpoolslist.get(i);
        dbname = dbpoole.getChild("dbname").getTextTrim();
        jndi = dbpoole.getChild("jndi").getTextTrim();
        this.DBPOOLS.put(dbname, jndi);
      }
      //System.out.println(this.DBPOOLS.size());

      Element serverlist = root.getChild("serverlist");
      java.util.List serverlists = serverlist.getChildren();
      String ip = "";
      String url = "";
      String main = "";
      String[] serverinfo = null;
      for (int i = 0; i < serverlists.size(); i++) {
        serverinfo = new String[3];
        Element server = (Element) serverlists.get(i);
        ip = server.getChild("ip").getTextTrim();
        url = server.getChild("url").getTextTrim();
        main = server.getChild("main").getTextTrim();
        if (url.endsWith("/")) {
          url = url.substring(0, url.length() - 1);
        }
        serverinfo[0] = ip;
        serverinfo[1] = url;
        serverinfo[2] = main;
        this.SERVERS.add(serverinfo);
        this.SERVERSURL.add(serverinfo[1]);
        if (main.equals("no")) {
          this.SERVERSIP.add(serverinfo[0]);
        }
        else {
          this.LOCALHOST = serverinfo[0];
        }
      }
      Element adve = root.getChild("advlist");
      java.util.List advlist = adve.getChildren();
      //String imgsrc = "";
      //String advurl = "";
      String[] adv = null;
      for (int i = 0; i < advlist.size(); i++) {
        adv = new String[2];
        Element aadv = (Element) advlist.get(i);
        adv[0] = aadv.getChild("imgsrc").getTextTrim();
        adv[1] = aadv.getChild("advurl").getTextTrim();
        this.ADV.add(adv);
      }
    }
    catch (Exception e) {
      logger.error(e);
    }
  }

  public static void main(String[] args) {
    SysInfo aSysInfo = new SysInfo();
    //System.out.println(aSysInfo.WEBSITENAME);
    System.out.println(aSysInfo.PORT);
    System.out.println(aSysInfo.SERVERS.size());
    for (int i = 0; i < aSysInfo.SERVERS.size(); i++) {
      String[] serverinfo = (String[]) aSysInfo.SERVERS.get(i);
      System.out.println(serverinfo[0]);
      System.out.println(serverinfo[1]);
    }
  }

}

⌨️ 快捷键说明

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