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

九大内置对象:

                (r、r、s、c、a、e、o、p、p)

                 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" isErrorPage="true"%>
<!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=UTF-8">
<title>JSP内置对象</title>
</head>
<body>
<%
//页面上下文对象
pageContext.setAttribute("msg", "我是PageContext对象");
System.out.println(pageContext.getAttribute("msg"));
//请求对象
System.out.println("请求对象:"+request);
//响应对象
response.getWriter().print("OK");
//当前页面对象
System.out.println(page.getClass());//输出到控制台
//输出对象
out.print(48);//输出到浏览器:48
out.write(48);//输出到浏览器:0   ascii编码表对应
int no=101;
//会话对象
System.out.println(session);
//全局对象
System.out.println(application.getRealPath("/"));
//配置对象--初始化参数
System.out.println(config.getServletName());
//异常对象
System.out.println(exception);
System.out.println(application);
application.setAttribute("author", "1711");
%>
<h1>jsp脚本:<%=no %></h1>
<h1>jsp脚本:<% out.print(no); %></h1>
</body>
</html>

                jsp中out对象和getWrite()不能同时使用,out对应的有缓冲区,不会直接写到response上,而getWrite()是直接写到

                response上,两个同时写,会出现排序错乱问题,除非写完out,在后面加上out.flush().

   PageContext对象

               作用于页面上下文,可以获取其它八大对象。

               可作为容器。

//通过pageContext获取request对象,第三个参数就是获取什么对象
pageContext.setAttribute("username", "zhangsan", PageContext.REQUEST_SCOPE);
//查询作用域中username值
pageContext.findAttribute("username");

          pageContext虽然作用域最小,但是功能强大,可以获取其它三大作用域信息。

           pageContext.forward(“2.jsp”);//转发  request.getRequestDispatcher().forward();
          pageContext.include(“2.jsp”);//动态包含

四、四大作用域:

               request    session   application   pageContext         

               request域的使用场景:本次请求之后,数据就不再使用了,根据学号查询学生,根据新闻id查询新闻。

               session域的使用场景:同一个会话中共享的数据,使用session,用户登录信息

               application域的使用场景:所有用户共享的数据。整个程序的配置信息

               pageContext域的使用场景:当前页面。           

 

 

 

 

 

 

 

            

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值