表达式语言的内置对象

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

 

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

属性范围
表达式语言的内置对象
 

设置同名属性

<%@ 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可以进行参数的接收; 

你可能感兴趣的:(内置对象)