EL的11大隐式对象与源代码测试

EL的11大隐式对象

1、pageContext:代表pageContext对象

2、pageScope:代表page域
3、requestScope:代表request域
4、sessionScope
5、applicationScoope
6、param:Map对象,保存了所有的请求参数
7、paramValues:Map对象(value对应一个数组).用户提交多个值的情况下
8、header:Map对象。获取一个请求头的值
9、headerValues:Map对象(value对应一个数组).用户提交多同名头的情况下
10、cookie:Map对象。(value对应一个cookie对象)

11、initParam:Map对象。(key=参数名value=参数值,此参数是在web.xml中配置的)

写 4.jsp 测试如上的11大隐身对象,源代码如下

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="com.itheima.domain.Person"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title></title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	


  </head>
  
  <body>
     <br/>-----------------------PageContext------------------------------</br>
     <%
        pageContext.setAttribute("p", "pageContext");
      %>
      ${pageContext.class }  <br/>
      ${ pageScope.p} <br/>
      <%
       out.println(pageContext.getClass());
       %>
   <br/>-----------------------RequestScope------------------------------</br> 
   ${requestScope.p } 
      <br/>-----------------------sessionScope------------------------------</br>
   <%
       pageContext.setAttribute("user",new Object()); 
       session.setAttribute("user",new Object());  
    %>
    ${sessionScope.user ==null?"请登录":"欢迎您" }
     <br/>-----------------------param代表请求参数的map------------------------------</br>    
   <!-- http://localhost:8080/day1218/4.jsp?username=admin -->
   ${param.username }
   <br/>-----------------------paramValues代表请求参数的map,多值------------------------------</br>
   <!-- http://localhost:8080/day1218/4.jsp?hobby=ft&hobby=pp -->
   ${paramValues.hobby[0] }
   	  <br/>--------------header代表请求头的map--------------------<br/>
   <!--	用点 这里会出错,因为-在java是分隔符。改为如下,其中单引号和双引号都可以 --> 	  
   	  ${header['Accept-Language'] }
   	  <!-- []和.在EL表达式中都是可以使用的,如下例子 -->
   	  <%
   	       Person  p3 =new Person();
   	       request.setAttribute("p3", p3);
   	   %>
   	   ${p3.name }  <br/>
   	   ${p3["name"] } <br/>
      	  <br/>--------------cookie--------------------<br/>
     <%
        Cookie c = new Cookie("itcast","cn");
        response.addCookie(c);
      %> 	   
   	   ${cookie.itcast.value }
   	     	  <br/>--------initParam获取全局配置参数 (web.xml)--------------------<br/>
   	     	  ${initParam.encode }
  </body>
</html>

其中需要引用到的person类,源代码如下:

package com.itheima.domain;

public class Person {
        private String name="mzm";
        private int age;
        private boolean  married;
        private Address address;
        private byte gender;
        public byte getGender() {
			return gender;
		}
		public void setGender(byte gender) {
			this.gender = gender;
		}
		public Address getAddress() {
			return address;
		}
		public void setAddress(Address address) {
			this.address = address;
		}
		public Person(){}
		public Person(String name, int age, boolean married) {
			super();
			this.name = name;
			this.age = age;
			this.married = married;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public int getAge() {
			return age;
		}
		public void setAge(int age) {
			this.age = age;
		}
		public boolean isMarried() {
			return married;
		}
		public void setMarried(boolean married) {
			this.married = married;
		}
        
}


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值