📄 mainservlet.java
字号:
package com.blue.web.common.signon;
import java.net.MalformedURLException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.ConsoleAppender;
import org.apache.log4j.DailyRollingFileAppender;
import org.apache.log4j.PatternLayout;
import com.blue.web.common.util.AppKeys;
import com.blue.web.common.util.AppLogger;
import com.blue.web.common.util.AppSettings;
import com.blue.web.common.util.AppSettingsHandler;
//import com.blue.wap.common.util.timer.AbsoluteTimerTask;
public class MainServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = -5501250409047836674L;
private ServletContext context;
//private static AbsoluteTimerTask clock = new AbsoluteTimerTask(7, 0, 0);
public MainServlet() {
super();
}
public void destroy() {
super.destroy();
//clock.cancel();
}
/**
*
* @throws ServletException
*/
public void init(ServletConfig config) throws ServletException {
super.init();
context = config.getServletContext();
loadConfigurationXmlFile();
initLogger();
}
/**
*
* @throws ServletException
*/
private void loadConfigurationXmlFile() throws ServletException {
String configURL = null;
// ********************** 初始化系统配置信息 **********************
try {
// Get config.xml default location.
configURL = context.getResource("/WEB-INF/config.xml").toString();
System.out.println("appConfigURL\t= " + configURL.toString());
// Read application settings from config file.
AppSettingsHandler handler = new AppSettingsHandler();
handler.create(configURL);
return;
} catch (MalformedURLException e) {
System.err.println("MainServlet.init() : unable to find \"/WEB-INF/config.xml\".");
} catch (Exception e) {
System.err.println("MainServlet.init() : init config data error.");
e.printStackTrace();
}
throw new ServletException("Exception : MainServlet.loadConfigurationXmlFile()");
}
/**
*
* @throws ServletException
*/
private void initLogger() throws ServletException {
// ********************** 设置系统日志文件信息 **********************
try {
// Set log level for output.
String logLevel = AppSettings.getInstance().getProperty(AppKeys.LOG_LEVEL);
if (logLevel != null)
AppLogger.setLevel(logLevel);
System.out.println("logLevel\t= " + logLevel);
// Add the file appender to AppLogger.
String logFilePath = AppSettings.getInstance().getProperty(AppKeys.LOG_PATH);
System.out.println("logFilePath\t= " + logFilePath);
DailyRollingFileAppender fileAppender = new DailyRollingFileAppender(
new PatternLayout("=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n"),
logFilePath + "\\" + AppSettings.getInstance().getProperty(AppKeys.APPID) + ".log", ".yyyy-MM-dd");
AppLogger.getInstance().addAppender(fileAppender);
// Add the console appender to AppLogger.
AppLogger.getInstance().addAppender(new ConsoleAppender(
new PatternLayout("[%d{MM-dd HH:mm:ss}] %-5p : %10c > %x - %m%n"),
"System.out"));
// The remote telnet appender.
// 由于工程自动reload后telnet端口得不到释放,而导致该端口被占用,所以调试时禁用
/*
TelnetAppender telnetAppender = new TelnetAppender();
telnetAppender.setName("TelnetAppender");
telnetAppender.setPort(1080);
telnetAppender.setLayout(new PatternLayout("[%d{MM-dd HH:mm:ss}] %-5p : %10c > %x - %m%n"));
telnetAppender.activateOptions();
AppLogger.getInstance().addAppender(telnetAppender);
// OK
Enumeration appenders = AppLogger.getInstance().getAllAppenders();
int i = 0;
while (appenders.hasMoreElements()) {
Object appender = appenders.nextElement();
System.out.println("Appenders[" + (++i) + "] = " + appender.getClass());
}*/
AppLogger.info("AppLogger started.");
} catch (Exception e) {
System.err.println("MainServlet.init() : init application logger failure." + e.getMessage());
throw new ServletException("Exception : MainServlet.initLogger()");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -