必威体育Betway必威体育官网
当前位置:首页 > IT技术

JSP的9个内置对象,4个常用对象

时间:2019-09-01 15:41:04来源:IT技术作者:seo实验室小编阅读:82次「手机版」
 

jsp内置对象

JSP的内置对象(9个)是可以直接使用的。

内置对象 真实的对象 方法
request HttpServletRequest setAttribute() 、getAttribute()
response HttpServletResponse addCookie()、getWriter()
session HttpSession setAttribute()、getAttribute()
APPlication Servletcontext setAttribute()、getAttribute()
config ServletConfig getInitparameter()、getInitParameterNames()
exception throwable getmessage()
page Object (不使用对象)
out JspWriter write()、print()
pageContext PageContext setAttribute()、getAttribute()

前五个例子如下(request,response,session,application,config):

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>转发成功</h3>
<%
	request.getAttribute(name);
	response.addCookie(cookie);
	session.getattribute(name);
	application.getAttribute(name);
	config.getInitParameter(name);
%>
</body>
</html>

主要提及下面四个对象(exception,page,out,pageContext): 

1.exception:

其实这个对象用的比较少了。需要在可能出错的页面属性设置ERRORPage的路径,然后另外在exception对象所在jsp文件属性设置isErrorPage为true。完事。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" errorPage="/JSP/1.jsp"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
	int a = 10/0;
%>
</body>
</html>

————————————————————————————————————————————————————————————————————————
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" isErrorPage="true"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>你好,服务器正在维护</h3>
<%=exception.getMessage() %>
</body>
</html>

2.page

基本上不用。当前页面对象,指的就是自己。类似Java中的this关键字。当然了,JSP文件翻译成Java文件以后page对象的值就变成了this。在哪里找到编译后的文件?tomcat——work——cataline

3.out

out隐式对象得到的是JspWriter对象。在输出过程中会需要再次转换成response.getwrite()得到的printwriter对象才能输出。因此会有一个输出快慢的问题。response.getwrite()明显更快!

 4.PageContext对象

PageContextx对象是一个域对象,还可以通过该对象获得其他8个对象。

1.可以向自己的域存东西

2.可以向其他的域存东西

                   * setAttribute(String name, Object value, int scope) 

                   * getAttribute(String name, int scope) 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h4>向pageContext域存取东西</h4>
<%
	//下面两句等价
	pageContext.setAttribute("name", "page");
	pageContext.setAttribute("name", "page", pageContext.PAGE_SCOPE);
	//下面两句等价
	request.setattribute("name", "request");
	pageContext.setAttribute("name", "request", pageContext.REQUEST_SCOPE);
	//类似的
	pageContext.setAttribute("name", "session", pageContext.SESSION_SCOPE);
	//ServletContext是application的真是对象
	pageContext.setAttribute("name", "pageContext", pageContext.APPLICATION_SCOPE);
%>
<%=pageContext.getAttribute("name",pageContext.PAGE_SCOPE) %>
<%=pageContext.getAttribute("name",pageContext.REQUEST_SCOPE) %>
<%=pageContext.getAttribute("name",pageContext.SESSION_SCOPE) %>
<%=pageContext.getAttribute("name",pageContext.APPLICATION_SCOPE) %>
</body>
</html>

相关阅读

IE浏览器访问出现Automation 服务器不能创建对象

今天登陆一个部署在本地的B/S架构系统,突然出现弹出Automation 服务器不能创建对象,我还在用IE8。先扯远一点emmmm.............在

JSON数组,JSON对象,数组的区别

一、JSON 语法规则: JSON 是存储和交换文本信息的语法 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML、JSON等, JSON

JSP之setProperty和getProperty的常用方法

JSP之setProperty的常用方法 getProperty()方法

org.apache.jasper.JasperException: 无法编译JSP 集

很是气愤怎么之前写的简单的Javabean的例子老是显示无法编译,而且配置啥的都没问题就是简单的几行代码 就是找不到错。错误显示:org

通俗解释Hibernate中SessionFactory和Session是否是线

******************************************************************* SessionFactory接口负责Hibernate的初始化和建立Sessio

分享到:

栏目导航

推荐阅读

热门阅读