EL表达式的语法、EL取四大作用域中的值

EL表达式的语法、EL取四大作用域中的值

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


	<%-- 
		${key} : 到四大作用域里面去找到key对应的value
			它查询找的顺序 -> 从小至大
			
		注意四大作用域设值时的命名规范	KEY_IN_SESSION/KEY_IN_APP
	 --%>
	 <%-- JSP中部应该写java代码,下面只是为了测试方便查看 --%>
	 <%
	 	application.setAttribute("KEY_IN_APP", "我是application中的内容");
	 	session.setAttribute("KEY_IN_SESSION", "我是session中的内容");
	 	request.setAttribute("KEY_IN_REQUEST", "我是request中的内容");
	 	pageContext.setAttribute("KEY_IN_REQUEST", "我是pageContext中的内容");
	 	String name = "aaaa";
	 %>
	 
	  ${empty KEY_IN_APP} <%-- 判断作用域是否为空 --%>
	 <%=name %> 
<%-- 拿到name的值 --%> application:${KEY_IN_APP}
session:${KEY_IN_SESSION}
request:${KEY_IN_REQUEST}
pageContext:${KEY_IN_REQUEST}
<%-- 测试使用EL表达式从四大作用域中取值的顺序 pageContext,request,session,application --%> <% application.setAttribute("msg", "我是application中的内容"); session.setAttribute("msg", "我是session中的内容"); request.setAttribute("msg", "我是request中的内容"); pageContext.setAttribute("msg", "我是pageContext中的内容"); %> application:${msg}
session:${msg}
request:${msg}
pageContext:${msg}
<%-- 在作用域范围我们的名字取成一样了,怎么去找到特定的一个作用域中的值呢?? --%> ${pageScope.msg} ${requstScope.msg} <%-- session比较特别,因为session是存在浏览器中的,只有关闭浏览器之后才可以拿到后面作用域中的值 --%> ${sessionScope.msg} ${applicationScope.msg} <%-- EL表达式使用的细节测试 ${pageContext.request.contextPath} 获取上下文路径 作用:Tomcat项目配置,有时候会加上上下文路径,以后会涉及到我们修改上下文路径,当我们进行修改的时候, 就需要把页面上所有的连接全改了,为了避免每次都要全部修改。就可以使用下面这种方式拿到上下文路径。 --%> ${pageContext.request.contextPath}


你可能感兴趣的:(EL表达式的语法、EL取四大作用域中的值)