zoukankan      html  css  js  c++  java
  • Web程序对象作用域

    Web程序对象作用域:
    常用的有三个:请求作用域,会话作用域,应用上下文。
    请求作用域req范围最小,需要的资源最少,作用当前请求

    session会话作用于本次对话,每个对话都有JSessionID,

    ServletContext作用域范围大:web应用中所有都能够访问,生命周期和web容器一样长,维护所需资源多。

    在满足需求内耗费的资源越小越好

    一、请求作用域:

    //得到页面的属性和值
    req.getParameter("userName");
    Enumeration<String> enus = req.getParameterNames();//获取页面所提交的参数项
    while (enus.hasMoreElements()) {
    String propertyName = (String) enus.nextElement();//得到具体的属性名称
    String propertyValue = req.getParameter(propertyName);//得到具体的属性的值
    params.put(propertyName, propertyValue);
    }

    //可以设置的属性和值
    request.setSttribute("priceList",priceList);
    List priceList = (List)request.getAttribute("priceList");

    二、会话作用域

    req.getSession().setAttribute("user", user);//将查询出的对象交给Session,由Session去维护这个人的状态
    req.getSession().setMaxInactiveInterval(60);//设置Session作用域内的特殊对象的有效时间,以秒为单位
    //超过这个时间,比如在页面要引用这个,就没有了

    <!-- 全局设置Session会话超时时长,单位是分钟 -->
    <session-config>
    <session-timeout>15</session-timeout>
    </session-config>


    三、应用上下文
    @WebServlet(urlPatterns="/regist",asyncSupported=true,initParams={@WebInitParam(name="password",value="123456")})
    public class RegistServlet extends HttpServlet {

    private String password;

    @Override
    public void init(ServletConfig config) throws ServletException {
    // TODO Auto-generated method stub
    password = config.getInitParameter("password");
    }
    }

    <!-- 向整个应用上下文(Servlet运行环境,类似于JVM)中 ,设置默认参数,这是一种初始化的设置方式-->
    <context-param>
    <param-name>qianduoduo</param-name>
    <param-value>5000000</param-value>
    </context-param>

    String value = getServletConfig().getServletContext().getInitParameter("qianduoduo");


    ServletContext sc = getServletConfig().getServletContext();
    sc.setAttribute("qianshaoshao", 1);
    Integer qianshaoshao = (Integer) getServletConfig().getServletContext().getAttribute("qianshaoshao");

  • 相关阅读:
    springMVC-MyBatis-Mysql 环境下, 返回时间格式不是指定格式
    大话设计模式--第一章 简单工厂设计模式
    java编程思想第四版第十八章总结
    尚学堂-马士兵-专题-正则表达式
    张孝祥java高新技术 --- jkd1.5 新特性 -- 精华总结
    Python—文件进阶操作
    Python—文件读写操作
    Python—异常处理
    Python—网络抓包与解包(pcap、dpkt)
    Python—其它模块
  • 原文地址:https://www.cnblogs.com/wanglei718/p/5495089.html
Copyright © 2011-2022 走看看