getServletContext 共享数据

getServletContext 共享数据,第1张

getServletContext 共享数据

  getServletContext是凌驾于所有Servlet之上的,所以里面的数据可以实现共享,存储数据的形式使用键值对的形式。

HelloServlet.java中的代码
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
         String username="胡汉三";
        ServletContext context = this.getServletContext();
        //ServletContext 通过键值对的形式存储数据  多个servlet调用的ServletContext是同一个
        context.setAttribute("username",username);
    }
GetHello.java中的代码
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        ServletContext context = this.getServletContext();
        //返回值是object类型  高转低需要进行强转
        String username = (String) context.getAttribute("username");
        //设置响应的编码格式
        resp.setContentType("text/html");
        //设置响应的编码字符集
        resp.setCharacterEncoding("utf-8");
        resp.getWriter().print("汉奸"+username);

    }

配置web.xml

    
    
        hello
        com.zhang.servlet.HelloServlet
    
    
    
        hello
        /hello
    

    
        getHello
        com.zhang.servlet.GetHello
    
    
        getHello
        /getHello
    

启动Tomcat访问

如果直接访问getHello,返回的结果是null,因为此时的getServletContext还没有存放数据!

先访问hello,然后在此访问getHello,就可以了

 

 自己的理解!!!!!!!1

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5678313.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存