WEB项目服务器启动后内存开辟空间存放共享信息方法(原创)

1.创建处理类

代码如下:

package com;

import java.util.HashMap;
import java.util.Map;

 


public class InitParamUtils {
 
 private  static InitParamUtils util=null; 
 private Map zfMap=new HashMap();  
 private InitParamUtils(){
  //私有构造器,保证只有一个实例
 }
  
 public  static InitParamUtils getInstance(){
  if(util==null)
   util=new InitParamUtils();
  return util;
 }

 public Map getZfMap() {
  return zfMap;
 }

 public void setZfMap(Map zfMap) {
  this.zfMap = zfMap;
 }
 
}

2.创建Servlet处理类:

代码如下:

 

package com;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @ClassName: InitServlet
* @Description: 内存加载处理类
*/
public class InitServlet extends HttpServlet {

 public InitServlet() {
  super();
 }

 public void destroy() {
  super.destroy();

 }

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html");
  PrintWriter out = response.getWriter();
  out
    .println("<!DOCTYPE HTML PUBLIC /"-//W3C//DTD HTML 4.01 Transitional//EN/">");
  out.println("<HTML>");
  out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
  out.println("  <BODY>");
  out.print("    This is ");
  out.print(this.getClass());
  out.println(", using the GET method");
  out.println("  </BODY>");
  out.println("</HTML>");
  out.flush();
  out.close();
 }

 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html");
  PrintWriter out = response.getWriter();
  out
    .println("<!DOCTYPE HTML PUBLIC /"-//W3C//DTD HTML 4.01 Transitional//EN/">");
  out.println("<HTML>");
  out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
  out.println("  <BODY>");
  out.print("    This is ");
  out.print(this.getClass());
  out.println(", using the POST method");
  out.println("  </BODY>");
  out.println("</HTML>");
  out.flush();
  out.close();
 }

 public void init() throws ServletException {
  try {   
   InitParamUtils params = InitParamUtils.getInstance();  
   ServletContext servletContext = this.getServletContext();   
   servletContext.setAttribute("zfMap", params.getZfMap());
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

}

3.在web.xml中加入以下内容(服务启动加载):

 

<servlet>
  <servlet-name>InitServlet1</servlet-name>
  <servlet-class>com.InitServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
  <servlet-name>InitServlet1</servlet-name>
  <url-pattern>/InitServlet</url-pattern>
 </servlet-mapping>

 

4.调用:

存入:

   InitParamUtils ipu=InitParamUtils.getInstance();
   Map zfMap=ipu.getZfMap();
   zfMap.put("1","存入共享区域");
   ipu.setZfMap(zfMap);

取出:

   InitParamUtils ipu=InitParamUtils.getInstance();
   Map zfMap=ipu.getZfMap();

   String value1=(String)zfMap.get("1");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值