`
ganqing1234
  • 浏览: 171698 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

ServletContext, Session, Request的attribute

阅读更多

ServletContext 不是thread safe的,因为它里面的信息是整个web app所有servlet和jsp共享的。所以访问是要进行并发控制。

public void doGet(HttpServletRequest request, 
    HttpServletResponse response) throws IOException, ServletException {
    response.setContentType(“text/html”);
    PrintWriter out = response.getWriter();
    out.println(“test context attributes”);
    synchronized(getServletContext()) {
        getServletContext().setAttribute(“foo”, “22”);
        getServletContext().setAttribute(“bar”, “42”);
        out.println(getServletContext().getAttribute(“foo”));
        out.println(getServletContext().getAttribute(“bar”));
    }
}

 

session也不是thread safe的。因为一个客户端可以开多个浏览器窗口,但是它们都属于一个session。

public void doGet(HttpServletRequest request, 
    HttpServletResponse response)
throws IOException, ServletException {
    response.setContentType(“text/html”);
    PrintWriter out = response.getWriter();
    out.println(“test session attributes<br>”);
    HttpSession session = request.getSession();
    synchronized(session) {
        session.setAttribute(“foo”, “22”);
        session.setAttribute(“bar”, “42”);
        out.println(session.getAttribute(“foo”));
        out.println(session.getAttribute(“bar”));
    }
}
分享到:
评论

相关推荐

    servlet2.4doc

    Notification that an attribute has been added to a session. attributeAdded(ServletContextAttributeEvent) - Method in interface javax.servlet.ServletContextAttributeListener Notification that a new ...

    JSP内置对象使用说明.doc

    Object attribute = pageContext.getAttribute("attributeName", PageContext.SESSION_SCOPE); ``` 9.Page对象类:Servlet Page对象代表当前正在执行的Servlet实例,但通常不直接使用,因为可以通过`this`关键字...

    JAVAweb开发14566PPT课件.ppt

    - `Object attribute = session.getAttribute(String name)`: 获取会话属性。 - `session.invalidate()`: 终止会话。 ### Cookie及其应用 Cookie是客户端存储信息的一种机制。Servlet可以通过`response.addCookie...

    JSF如何使用ExternalContext类

    Object sessionAttribute = sessionMap.get("attributeName"); // 如果需要设置Session属性 sessionMap.put("attributeName", value); } ``` 在实际应用中,`ExternalContext`也常用于导航控制、资源定位、安全...

    JSP的四种作用范围总结

    - `setAttribute(String name, Object attribute)` 方法用于在指定的作用域内设置属性,其中`name`是属性名,`attribute`是属性值。 - `getAttribute(String name)` 方法用于获取在特定作用域内设置的属性值。 举例...

    Java-EL表达式语言讲解,适合初级人员入门学习

    - 当EL表达式被解析时,它会调用`pageContext.findAttribute`方法,依次从page、request、session、application四个域中查找与标识符匹配的对象。 - 如果找到了匹配的对象,则返回该对象;如果没有找到任何匹配项...

    jsp的九个隐含对象

    `pageContext.findAttribute()`方法可以用来查找任何范围内的属性。 2. **request对象**:代表客户端的HTTP请求,包含所有请求参数、头信息以及请求本身的信息。通过`request.getParameter()`可以获取请求参数,`...

    JSP的九个内置对象及四个作用域

    JSP 九个内置对象及四个作用域 JSP(Java Server Pages)是一种基于Java的服务器端脚本...JSP四个作用域包括page、request、session和application四个作用域,分别对应着页面、请求、会话和应用程序四个级别的作用域。

    JSP的九个隐含对象

    5. **session对象**:session对象代表了HttpSession接口,用于存储会话级数据。通过getSession()方法创建或获取会话,setAttribute()设置会话属性,getAttribute()获取属性,removeAttribute()移除属性,以及...

    Day10_jsp & 案例知识点

    此外,PageContext还提供了一个`findAttribute`方法,该方法会在四个作用域中查找属性,按照`page_scope`、`request_scope`、`session_scope`和`application_scope`的顺序查找。 #### 总结 本文档涵盖了JSP的基础...

    servlet 内置对象

    本文将详细介绍Servlet中的八大内置对象:`request`、`response`、`session`、`out`、`page`、`application`、`exception`及`pageContext`,并解释它们的作用与应用场景。 #### 1. request - HttpServletRequest -...

    tomcat共享多个web应用会话的实现方法

    HttpSession session = request.getSession(); ServletContext context = session.getServletContext(); Context otherContext = context.getContext("/app2"); Object attribute = otherContext.getAttribute(...

    JSP的内置对象及用法

    下面将详细介绍JSP中的九大内置对象:request、response、pageContext、session、application、out、config、page和exception。 #### 1. request对象 `request`对象封装了客户端请求的信息,并提供了多种方法来获取...

    jsp基础速成精华讲解

    HttpSession session = request.getSession(); session.setAttribute("name", "zhangsan"); String name = (String) session.getAttribute("name"); ``` 2. **Cookie** - `Cookie` 是一种轻量级的数据存储方式...

    JSP典型笔试题及答案.pdf

    - `pageContext`:`javax.servlet.jsp.PageContext`对象,简化了对各种范围内的名字空间、servlet相关对象的访问,以及封装了通用的servlet功能,如`findAttribute(String name)`和`setAttribute(String name, ...

    JSP Simple Examples

    It mostly contains the request information, ServletContext initialization parameters, ServetContext attributes, request headers, response headers etc. sendRedirect In JSP sendRedirect() method is a ...

    jsp内置对象的用法

    JSP提供了九种内置对象,它们分别是:`request`、`response`、`session`、`out`、`page`、`application`、`exception`、`pageContext` 和 `config`。下面我们将逐一详细介绍这些内置对象及其主要方法。 #### 二、...

    tjhom.zip_Jsp/Servlet_Java_

    这些内置对象包括请求(Request)、响应(Response)、会话(Session)、应用(Application)、页面(Page)、页面上下文(PageContext)、例外(Exception)、Out和配置(Configuration)等。 1. **请求(Request)**对象:代表...

Global site tag (gtag.js) - Google Analytics