表达式语言的内置对象

本章目标
掌握表达式语言中的各主要内置对象的使用;
可以使用表达式输出指定范围的属性或者是参数。

 

表达式语言的内置对象定义

 

属性范围

 

设置同名属性

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
<title>设置同名属性</title>
</head>
<body>
<%
		pageContext.setAttribute("info", "page 属性范围");//设置一个 page 属性
		request.setAttribute("info", "request 属性范围");//设置一个 request 属性
		session.setAttribute("info", "session 属性范围");//设置一个 session 属性
		application.setAttribute("info", "application 属性范围");//设置一个 application 属性
 %>
 <h3>${info}</h3><!-- 表达式输出 -->
</body>
</html>

效果图:

 

指定取出范围的属性

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
<title>指定取出范围的属性</title>
</head>
<body>
<%
		pageContext.setAttribute("info", "page 属性范围");//设置一个 page 属性
		request.setAttribute("info", "request 属性范围");//设置一个 request 属性
		session.setAttribute("info", "session 属性范围");//设置一个 session 属性
		application.setAttribute("info", "application 属性范围");//设置一个 application 属性
 %>
<h3>page 属性内容:${pageScope.info}</h3><!-- 表达式输出 -->
<h3>request 属性内容:${requestScope.info}</h3><!-- 表达式输出 -->
<h3>session 属性内容:${sessionScope.info}</h3><!-- 表达式输出 -->
<h3>application 属性内容:${applicationScope.info}</h3><!-- 表达式输出 -->
</body>
</html>

 效果图:

 

调用JSP内置对象的方法

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
<title>调用JSP内置对象的方法</title>
</head>
<body>
<h3>IP地址:${pageContext.request.remoteAddr}</h3>
<h3>SESSION ID:${pageContext.session.id}</h3>
<h3>是否是新的ID:${pageContext.session.new}</h3>
</body>
</html>

 效果图:

 

接收请求参数

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
<title>接收参数</title>
</head>
<body>
<h3>通过内置对象接收输入参数:<%=request.getParameter("ref") %></h3>
<h3>通过表达式语言接收输入参数:${param.ref}</h3>
</body>
</html>

 效果图:

 

使用表达式接收一组参数

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
<title>定义表单,传递复选框</title>
</head>
<body>
<form action="demo5Post.jsp" method="post">
	兴趣:
	<input type="checkbox" name="inst" value="唱歌">唱歌
	<input type="checkbox" name="inst" value="游泳">游泳
	<input type="checkbox" name="inst" value="看书">看书
	<input type="submit" value="显示">
</form>
</body>
</html>

 效果图:

<%@ page language="java" contentType="text/html" pageEncoding="utf-8"%>
<html>
<head>
<title>使用表达式接收参数</title>
</head>
<%request.setCharacterEncoding("utf-8"); %>
<body>
<form>
<h3>第一个参数:${paramValues.inst[0]}</h3>
<h3>第二个参数:${paramValues.inst[1]}</h3>
<h3>第三个参数:${paramValues.inst[2]}</h3>
</form>
</body>
</html>

效果图:

 
小结
默认情况下表达式是采用顺序的方式输出属性的顺序:page —> request —> session —> application
通过param可以进行参数的接收; 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值