• Servlet中ServletContext的用法


    ServletContext可以想象为服务器中的一个公用空间,可以被所有的客户访问

    ServletContext也是以“名-值”的形式保存数据,其用法有:

    1. 得到ServletContext:this.getServletContext();
    2. 添加属性:setAttribute(String name,Object ob);
    3. 得到值:   getAttribute(String),返回Object
    4. 删除属性:removeAttribute(String name)
    ServletContext中的属性的生命周期从创建开始,到服务器关闭而结束
    注意:因为存在ServletContext中的数据会长时间的保存在服务器,会占用内存,因此我们建议不要向serveltContext中添加过大的数据

    例子——向ServletContext中添加属性:

    /**
     * @(#)TestServletContext1.java
     *向ServletContext中添加属性
     *
     * @author 
     * @version 1.00 2017/3/30
     */
    package com.chongqing;
    
    import javax.servlet.http.*; 
    import javax.servlet.*; 
    import java.io.*;
    
    public class TestServletContext1 extends HttpServlet{
    	
    	public void doGet(HttpServletRequest req,HttpServletResponse res){
    	 	
    	 	try {
    	 		res.setContentType("text/html;charset=UTF-8");  
    	    	PrintWriter pw=res.getWriter(); 
    	    		
    		 	ServletContext sc = this.getServletContext();     //得到ServletContext
    		 	sc.setAttribute("myContext","TestServletContext");//往ServletContext添加属性
    		 	
    		 	pw.println("向servletContext中添加了一个属性:myContext");
    	
    		}
    		catch (Exception ex) {
    			ex.printStackTrace();
    		}
    	}
    	
    	public void doPost(HttpServletRequest req,HttpServletResponse res){
    		
    		this.doGet(req,res);	 	
    	 }
    }
    

      

    例子——获得ServletContext中的属性:

    /**
     * @(#)TestServletContext2.java
     *获得ServletContext中的属性
     *
     * @author 
     * @version 1.00 2017/3/30
     */
    package com.chongqing;
    
    import javax.servlet.http.*; 
    import javax.servlet.*; 
    import java.io.*;
    
    public class TestServletContext2 extends HttpServlet{
    	
    
    	public void doGet(HttpServletRequest req,HttpServletResponse res){
    	 	
    	 	try {
    			res.setContentType("text/html;charset=UTF-8");  
    	    	PrintWriter pw=res.getWriter(); 
    	    		
    		 	ServletContext sc = this.getServletContext();     //得到ServletContext
    		 	String myfo = (String)sc.getAttribute("myContext");//从ServletContext获取属性myContext的值
    		 	
    		 	pw.println("从ServletContext获取属性myContext的值为:"+myfo);
    		}
    		catch (Exception ex) {
    			ex.printStackTrace();
    		}	 	
    	}
    	
    	public void doPost(HttpServletRequest req,HttpServletResponse res){
    		
    		this.doGet(req,res);	 	
    	 }
    }
    

      

  • 相关阅读:
    Octave中的函数记录
    利用jira-python对jira项目
    通过python中xlrd读取excel表格(xlwt写入excel),xlsxwriter写入excel表格并绘制图形
    使用python的requests模块采集请求中的数据
    react+webpack+webstorm开发环境搭建
    Django中url使用总结
    通过Django中的forms类对前台的forms表单数据进行校验
    4.软件测试用例设计
    3.软件开发与测试模型
    16 IO流
  • 原文地址:https://www.cnblogs.com/yzy-blogs/p/6646428.html
Copyright © 2020-2023  润新知