您的位置:首页 > Web前端 > JavaScript

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

2016-11-21 16:53 302 查看
在本星期项目学习的过程中,老师提到了JSP的九大内置对象和四个作用域,并给我们讲解了一下request域的用法.
我自己查找了一些关于  <JSP的九大内置对象和四个作用域  >的资料:

内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用.

JSP的九大内置对象:

       page  application  session  request  response  out  exception  config  pageContext. 

内置对象                                        代表内容                                            类型                                            作用域

request            请求对象            触发服务调佣的请求                           javax.servlet.ServletRequest        Request

response          响应对象              对请求的应答                                     javax.servlet.SrvletResponse        Page

pageContext    页面上下文对象    本JSP页面的上下文                            javax.servlet.jsp.PageContext       Page
session            会话对象              为请求的用户创建的session对象        javax.servlet.http.HttpSession       Session

application       应用程序对象                                                                  javax.servlet.ServletContext         Application

out                   输出对象             向输出流写入内容的对象                     javax.servlet.jsp.JspWriter            Page

config               配置对象             本JSP的ServletConfig                         javax.servlet.ServletConfig           Page

page                页面对象             实现本页当前请求的类的实例              javax.lang.Object                          Page

exception         例外对象             表示JSP页面运行时产生的异常           javax.lang.Throwable                    Page

JSP的四个作用域:

            application  session   request   page.



page里的变量没法从一个页面到另一个页面。只要页面跳转了,它们就不见了。

request里的变量可以跨越页面。但是只要刷新页面,它们就重新计算了。

session和application里的变量一直在累加,开始还看不出区别,只要关闭浏览器,再次重启浏览器访问这页,session里的变量就重新计算了。

application里的变量一直在累加,除非你重启tomcat,否则它会一直变大。

我正在做的项目中用到了request:

request里的变量可以跨越页面。

(从数据库读取的内容存在list中)

request.setAttribute("addList", list);//将数据存放在request请求中

request.getRequestDispatcher("/index.jsp").forward(request, response);//通过转发跳转页面,并传递数据

在index.jsp页面接受数据,并对数据进行处理

<% List<Map<String,Object>> list = (List<Map<String,Object>>) request.getAttribute("addList"); %>

        <% for(int i=0;i<list.size();i++){ %>

            <tr>

                <td class="td1"><input type="checkbox" class="xuanxiang"></td>

                <td><%=i+1 %></td>

                <td><%=list.get(i).get("name") %></td>

                <td><%=list.get(i).get("sex") %></td>

                <td><%=list.get(i).get("phone") %></td>

            </tr>

        <% } %>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: