域scope 介绍,及查找数据

书中介绍<jsp:useBean> 中属性 scope:

     

<%@ page language="java" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
    FDSAFDAF家乐福大家乐福
    </br>
    <%
        request.setAttribute("data", "</br>ewqrewqr</br>");
        String data = (String) pageContext.getAttribute("data", pageContext.REQUEST_SCOPE);
        out.write(data);
        pageContext.findAttribute("data"); //page request session application
        //el 表达式  
        //${data};//相当于这句pageContext.findAttribute("data");
    %>
</body>
</html>

pageContext(称之为page域) 是四个域的最小的域,只能在当前页中;
request(称之为request域) 请求范围内
session(称之为session域)会话范围内
servletContext(称之为application域) 应用范围内
明确如下问题:
什么是域?
这4个对象的生命周期?
哪种情况下用哪种域对象。
1、request:如果客户向服务器发请求,产生的数据,用户看完就没用了,像这样的数据就存在request域,像新闻数据,属于用户看完就没用的
2、session:如果客户向服务器发请求,产生的数据,用户用完了等一会儿还有用,像这样的数据就存在session域中,像购物数据,用户需要看到自己购物信息,并且等一会儿,还要用这个购物数据结帐
3、servletContext:如果客户向服务器发请求,产生的数据,用户用完了,还要给其它用户用,像这样的数据就存在servletContext域中,像聊天数据

从四个域里面找数据;
pageContext.findAttribute("data"); //page request session application
//el 表达式
${data};//相当于这句pageContext.findAttribute("data");

=====特殊用法:

  

原文地址:https://www.cnblogs.com/rogge7/p/6953724.html