JSP 隐式对象
一. 隐式对象
对象 | 类型 |
---|---|
request | javax.servlet.http.HttpServletRequest |
response | javax.servlet.http.HttpServletResponse |
out | javax.servlet.jsp.JspWriter |
session | javax.servlet.http.HttpSession |
application | javax.servlet.ServletContext |
config | javax.servlet.ServletConfig |
pageContext | javax.servlet.jsp.PageContext |
page | javax.servlet.jsp.HttpJspPage |
exception | java.lang.Throwable |
1.request可以理解为一个指向HttpServletRequest对象的引用变量,下面是示例代码
<%
String userName = request.getParameter("userName");
%>
2.pageContext用于javax.servlet.jsp.PageContext。它提 供了有用的上下文信息,并通过其自说明的方法来访问 各种Servlet相关对象,如getRequest、getResponse、 getServletContext、getServletConfig和getSession。
pageContext提供了用于获取和设置属性的方法,属性值可被存储在4个范围之一:页 面、请求、会话和应用程序。页面范围是最小范围,这 里存储的属性只在同一个JSP页面可用。请求范围是指 当前的ServletRequest中。会话范围指当前的HttpSession 中。应用程序范围指应用的ServletContext中。 PageContext的setAttribute方法签名如下:
public abstract void setAttribute(java.lang.String name, java.lang.Object value, inscope)
其中,scope的取值范围为PageContext对象的最终 静态int值:PAGE_SCOPE、REQUEST_ SCOPE、 SESSION_SCOPE和APPLICATION_SCOPE。 若要保存一个属性到页面范围,可以直接使用 setAttribute重载方法:
public abstract void setAttribute(java.lang.String name, java.lang.Object value)
如下脚本将一个属性保存到ServletRequest中:
<%
//product is a Java object
pageContext.setAttribute("product", product,
PageContext.REQUEST_SCOPE);
%>
同样效果的Java代码如下:
<% request.setAttribute("product", product); %>
<% request.setAttribute("prodcute",producte) %>
三.隐式对象out引用了一个javax.servlet.jsp.JspWriter对 象,这类似于你在调用HttpServlet Response的getWriter 方法时得到java.io.PrintWriter。可以通过调用它的print 方法将消息发送到浏览器。例如:
out.println("welcome");
例:
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ page import="java.util.Enumeration" %>
<html>
<head><title>Implicit</title></head>
<body>
<b>Http Header:</b>
<%
for(Enumeration<String> e = request.getHeaderNames(); e.hasMoreElements(); )
{
String header = e.nextElement();
out.println(header + ": " + request.getHeader(header) + "<br />" );
}
%>
<hr /> <%
out.println("Buffer size: " + response.getBufferSize() + "<br />");
out.println( "Session id: "+ session.getId() + "<br />");
out.println("Servlet Name: " + config.getServletName() + "<br />");
out.println("Servlet info " + application.getServerInfo() + "<br />");
%> </body>
</html>
输出
JSP 隐式对象的更多相关文章
- 【Head First Servlets and JSP】笔记16:JSP隐式对象(内置对象)的映射关系
接笔记15. 1.不管是JSP中的<%%>还是<%\=%>最终都将处于servlet的方法体中,那么有没有一种元素可以声明成类的成员呢? ——答案是有,而且非常非常简单,这个元 ...
- jsp学习与提高(二)——JSP 隐式对象、表单处理及过滤器
1.JSP 隐式对象 JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明.JSP隐式对象也被称为预定义变量. JSP所支持的九大隐式对象: 对象 描述 req ...
- JSP-Runoob:JSP 隐式对象
ylbtech-JSP-Runoob:JSP 隐式对象 1.返回顶部 1. JSP 隐式对象 JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明.JSP隐式对 ...
- jsp隐式对象
隐式对象使用位置 隐式对象在转译为Servlet后,是_jspService()中的局部变量.隐式对象只能在<%与%>之间,或<%=与%>之间直接使用. 无法在<%!与% ...
- JSP——隐式对象(implicit object)
Servlet容器将几个对象传递给它所运行的Servlet. 例如,在Servlet的service方法中获得HttpServletRequest和HttpServletResponse,并在init ...
- 有关JSP隐式对象,以下( )描述正确。
A.隐式对象是WEB容器加载的一组类的实例,可以直接在JSP页面使用 B.不能通过config对象获取ServletContext对象 C.response对象通过sendRedirect方法实现重定 ...
- jsp 是什么 ,jsp 隐式对象
google 搜索 java server page http://www.oracle.com/technetwork/java/javaee/jsp/index.html http://docs. ...
- JSP页面以及JSP九大隐式对象
JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比 ...
- JSP与EL隐式对象
一,JSP隐式对象 隐式对象是可以直接使用的,无需声明.因为在JSP转译为servlet文件后,会自动声明其对象. 隐式对象① 说明 out 对应JspWriter对象,其内部关联一个PrintWri ...
随机推荐
- app-web 开发 追溯debug
1.iphone5 运行vue项目时,方法格式:fun(){}这种格式容易不显示页面 2.vue未绑定上数据有可能是js文本过大,手机内存不足引起的 3.根据方法走向追溯debug 4.一定要用try ...
- Javascript入门(二)变量、获取元素、操作元素
一.变量 Javascript 有五种基本数据类型 number.String.boolean.undefined.null 一种复合类型:object 二.使用getElementById方法获取元 ...
- Javascript - ExtJs - 事件
事件(ExtJs Event) Ext.Util.observable类 Ext.Util.observable是一个接口,为Ext组件的事件提供了支持,组件的事件不同于传统事件,所以需要有这么一套 ...
- Gulp简明使用教程
Glup用自动化构建工具增强你的工作流程! 同类型的软件还有Grunt.关于两者的区别可以参考这篇文章Grunt VS Gulp 安装: $ npm install gulp -g $ npm ins ...
- light oj 1011 - Marriage Ceremonies
题目大意: 给出n*n的矩阵Map,Map[i][j]代表第i个男人和第j个女人之间的满意度,求男女一一配对后,最大的满意度之和. 题目思路:状态压缩 题目可看做每行取一点,所有点不同列的情况下,各个 ...
- 【C++】一篇文章,让你不再害怕指针
在C++中,比较难以理解的就是指针,最常用的也是指针.这篇文章,结合我的所学,所看,来谈谈C++中的指针 指针是什么 指针是一个特殊的变量,指向内存中的一个地址.它具有四个要素: 指针类型:即指针本身 ...
- LwIP Application Developers Manual5---高层协议之DHCP,AUTOIP,SNMP,PPP
1.前言 本文主要讲述高层协议,包括DHCP 2.DHCP 2.1 从应用的角度看DHCP 你必须确保在编译和链接时使能DHCP,可通过在文件lwipopts.h里面定义LWIP_DHCP选项,该选项 ...
- Linux内核调试:kdump、vmcore、crash、kernel-debuginfo【转】
转自:https://blog.csdn.net/guowenyan001/article/details/19807555 一.简介 linux内核发送崩溃时,kdump会生成一个内核转储文件vmc ...
- python打印朱莉娅集合
# -*- coding: utf-8 -*- import numpy as np import matplotlib.pyplot as plt # 複素数列の計算回数を出力する関数loopmax ...
- ASP.NET WEBAPI 使用Swagger生成API文档
一.安装 新建一个没有身份验证的mvc项目 - SwaggerMvc5Demo,然后添加一个名为Remote(自定义)且包含基础读写(不想手写)的ApiController 开源地址:https: ...