利用servlet监听器,系统启动时创造自定义容器简单例子
利用servlet监听器,系统启动时创建自定义容器简单例子
web.xml加入:
<listener>
<listener-class>com.telewave.listener.MyInitListener</listener-class>
</listener>
容器类:
package com.telewave.listener;
import java.util.HashMap;
import java.util.Map;
public class MyContainer {
private static MyContainer instance = new MyContainer();
private Map<String, String> map = new HashMap<String, String>();
private MyContainer() {}
public static MyContainer getInstance() {
return instance;
}
public Map<String, String> getMap() {
return map;
}
}
监听类:
package com.telewave.listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class MyInitListener implements ServletContextListener {
//当Servlet容器启动时会执行
public void contextInitialized(ServletContextEvent arg0) {
MyContainer.getInstance();
}
//当Servlet容器停止时会执行
public void contextDestroyed(ServletContextEvent arg0) {
}
}
往容器存入:
MyContainer.getInstance().getMap().put("key", "value");
从容器取出:
MyContainer.getInstance().getMap().get("key");
web.xml加入:
<listener>
<listener-class>com.telewave.listener.MyInitListener</listener-class>
</listener>
容器类:
package com.telewave.listener;
import java.util.HashMap;
import java.util.Map;
public class MyContainer {
private static MyContainer instance = new MyContainer();
private Map<String, String> map = new HashMap<String, String>();
private MyContainer() {}
public static MyContainer getInstance() {
return instance;
}
public Map<String, String> getMap() {
return map;
}
}
监听类:
package com.telewave.listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class MyInitListener implements ServletContextListener {
//当Servlet容器启动时会执行
public void contextInitialized(ServletContextEvent arg0) {
MyContainer.getInstance();
}
//当Servlet容器停止时会执行
public void contextDestroyed(ServletContextEvent arg0) {
}
}
往容器存入:
MyContainer.getInstance().getMap().put("key", "value");
从容器取出:
MyContainer.getInstance().getMap().get("key");