mainservlet.java

来自「一个免费wap站」· Java 代码 · 共 108 行

JAVA
108
字号
package com.eline.wap.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.eline.wap.common.util.AppKeys;
import com.eline.wap.common.util.AppLogger;
import com.eline.wap.common.util.AppSettings;
import com.eline.wap.common.util.AppSettingsHandler;

public class MainServlet extends HttpServlet {

	/**
	 * 
	 */
	private static final long serialVersionUID = -5501250409047836674L;

	private ServletContext context;

	public MainServlet() {
		super();
	}

	/**
	 * 
	 * @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"));
			AppLogger.info("AppLogger started.");

		} catch (Exception e) {
			System.err.println("MainServlet.init() : init application logger failure.");
			e.printStackTrace();

			throw new ServletException("Exception : MainServlet.initLogger()");
		}
	}
}

⌨️ 快捷键说明

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