📄 properties.java
字号:
package com.trulytech.mantis.system;
import java.sql.Timestamp;
import java.io.FileNotFoundException;
import java.util.HashMap;
import com.trulytech.mantis.thread.ThreadManager;
import com.trulytech.mantis.socket.SocketServer;
/**
* <p>Title: 属性</p>
* <p>Description: 存取属性</p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: trulytech</p>
* @author WangXian
* @version 1.2
*/
public final class Properties {
//日志文件名,不含扩展名
public static String logFilePrefix;
//日志等级 0-无日志 1-错有错误信息 2-一般信息 3-所有信息
public static int logLevel;
//日志类型[new-新增,append-附加
public static String logType;
//日志文件类型 [single-单个 multi-多个]
public static String logFileType;
//JDBC Driver Class
public static String JDBCClass;
//JDBC URL
public static String JDBCURL;
//JDBC UserName
public static String UserName;
//JDBC Password
public static String Password;
//JDBC Charset
public static String Charset;
//JDBC 是否使用Unicode
public static String isUnicode;
//是否转换字符集
public static boolean isConvert;
//Error Page URL
public static String ErrPageURL;
//Timeout Page URL
public static String TimeoutURL;
//Alert Page URL
public static String AlertURL;
//JDBC Type
public static boolean isConnectPool;
//连接池提供者(tomcat,weblogic,native)
public static String PoolProvider;
//DataSource
public static String DataSource;
//连接池最大连接数(只有PoolProvider为native时才生效),如果超过了返回null
public static int MaxConnection = 50;
//Upload Path (相对地址)
public static String UploadPath;
//Temp Upload Path
public static String tmpPath;
//上传文件大小(2M)
public static long UploadMaxSize = 2048 * 1024 * 1024;
//SMTP Server地址
public static String SMTPServer;
//SMTP Server是否需要认证
public static boolean SMTPAuth;
//SMTP Server认证用户名
public static String SMTPUser;
//SMTP Server认证密码
public static String SMTPPwd;
//Fetch Size
public static int Fetch_Size = 50;
//查询的最大记录数 0-无限制
public static int MaxRows = 0;
//确省一页的记录数
public static String PageSize = "10";
//查询超时(秒) 0-无限制
public static int QueryTimeout = 0;
//是否获取数据字段信息
public static boolean MetaData;
//Session中存储用户ID的对象标志
public static String Session_UserID;
//Session中存储权限的对象标志
public static String Session_Permission;
//当Session中存储权限的对象标志为空时,是否继续判断权限(调试用false,正式运行一般为true)
public static boolean HasPermission;
//Session中存储语言的对象标志
public static String Session_Language;
//判断动作的标志符,用于权限控制
public static String Action_Tag;
//判断动作前缀的标志符,用于后台调用的方法
public static String Action_Prefix;
//是否写操作员日志
public static boolean isAduit;
//是否写屏幕日志
public static boolean ScreenLog;
//是否初始化
private static boolean isInit = false;
//XML位置
public static String XMLURL = null;
//日志文件位置
public static String LogURL = null;
//资源位置
public static String CacheURL = null;
//资源信息
public static java.util.Properties Cachekeys = null;
//table缓存
public static HashMap cacheTable = null;
//国际化
public static boolean isInternational = false;
//缺省语言(如果找不到语言的资源定义,则找缺省的语言)
public static String DefaultLanguage = null;
//资源的缓存表定义
public static String InternationalResource = null;
//语言资源
public static HashMap Message = null;
//语言资源中命令非法的Key
public static String KeyBadCommand = null;
//语言资源中权限非法的Key
public static String KeyPermissionDeny = null;
//是否有后台线程
public static boolean HasBackgroundThread = false;
//后台线程刷新间隔(ms)
public static long ThreadInterval = 1000;
//后台线程处理类
public static String ThreadProcessClass = null;
//报表Template路径
public static String RptTemplatePath = null;
//后台线程
private static ThreadManager BackThread = null;
//后台Socket Server
private static SocketServer svc = null;
//是否通过response返回错误授权信息
public static boolean isResponseAlert = false;
//是否通过response返回timeout信息
public static boolean isResponseTimeout = false;
//是否通过response返回Error信息
public static boolean isResponseErr = false;
//是否有后台SocketServer
public static boolean HasBackgroundSocket = false;
//后台SocketServer 监听端口
public static int SocketPort = 88888;
//最大处理线程数
public static int MaxProcessThread = 5;
//最大并发Socket请求等待个数
public static int MaxWait = 5;
//后台Socket处理类
public static String SocketProcessClass = null;
//报表Template路径
/**
* 是否已经初始化
* @return boolean
*/
public static boolean getInit() {
return isInit;
}
/**
* 设置xml路径
*@param URL init.xmlURL地址
*/
public static void setXMLURL(String URL) {
XMLURL = URL + System.getProperty("file.separator") + "WEB-INF" +
System.getProperty("file.separator") + "init.xml";
CacheURL = URL + System.getProperty("file.separator") + "WEB-INF" +
System.getProperty("file.separator") + "cache.xml";
LogURL = URL + System.getProperty("file.separator") + "WEB-INF" +
System.getProperty("file.separator");
}
/**
* 初始化参数
*
*/
public static void init() {
Timestamp currTime = new Timestamp(System.currentTimeMillis());
System.out.println("System initializing... [" + currTime.toString() + "]");
Cachekeys = new java.util.Properties();
cacheTable = new HashMap();
Message = new HashMap();
try {
//解析xml文件
xmlReader Reader = new xmlReader();
java.util.Properties Props = Reader.parse(XMLURL, "init-param");
//属性复值
logFilePrefix = Props.getProperty("logFilePrefix");
//如果日志文件以$开头,则将日志文件写到该Web应用的WEB-INF目录中
if (logFilePrefix.charAt(0) == '$')
logFilePrefix = LogURL + logFilePrefix.substring(1, logFilePrefix.length());
logLevel = Integer.valueOf(Props.getProperty("logLevel")).intValue();
logType = Props.getProperty("logType");
logFileType = Props.getProperty("logFileType");
JDBCClass = Props.getProperty("JDBCClass");
JDBCURL = Props.getProperty("JDBCURL");
UserName = Props.getProperty("UserName");
Password = Props.getProperty("Password");
Charset = Props.getProperty("Charset");
isUnicode = Props.getProperty("Unicode");
ErrPageURL = Props.getProperty("ErrPageURL");
TimeoutURL = Props.getProperty("TimeoutURL");
AlertURL = Props.getProperty("AlertURL");
Session_UserID = Props.getProperty("Session-UserID");
Session_Permission = Props.getProperty("Session-Permission");
Session_Language = Props.getProperty("Session-Language");
Action_Tag = Props.getProperty("Action-Tag");
Action_Prefix=Props.getProperty("Action-Prefix");
isConnectPool = Boolean.valueOf(Props.getProperty("isConnectPool")).
booleanValue();
isConvert = Boolean.valueOf(Props.getProperty("ConvertCharset")).
booleanValue();
HasBackgroundThread = Boolean.valueOf(Props.getProperty(
"HasBackgroundThread")).
booleanValue();
HasPermission = Boolean.valueOf(Props.getProperty("HasPermission")).
booleanValue();
isAduit = Boolean.valueOf(Props.getProperty("isAudit")).
booleanValue();
ScreenLog = Boolean.valueOf(Props.getProperty("Screenlog")).
booleanValue();
MetaData = Boolean.valueOf(Props.getProperty("MetaData")).booleanValue();
PoolProvider = Props.getProperty("PoolProvider");
MaxConnection = Integer.valueOf(Props.getProperty("MaxConnection")).
intValue();
DataSource = Props.getProperty("DataSource");
UploadPath = Props.getProperty("Upload");
UploadMaxSize = Long.valueOf(Props.getProperty("UploadMaxSize")).
longValue();
ThreadInterval = Long.valueOf(Props.getProperty("ThreadInterval")).
longValue();
tmpPath = Props.getProperty("TmpPath");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -