Jsp入门第四章——EL表达式
来源:互联网 发布:mac怎么裁剪音乐 编辑:程序博客网 时间:2024/04/27 15:48
EL 全名为Expression Language。它是一种数据访问语言,目的为了简化Jsp代码,这一点和标签的作用是一样的。
基本用法:
(1)、使用变量访问web域对象中存储的值 ${user }
等价于<%= request.getAttribute(“user”) %>
(2)、访问javabean的属性 ${user.address.city }
(3)、执行基本的逻辑运算 ${ num+1 } ${user==null }
(4)、直接使用隐式对象 ${ pageContext }
EL 表达式可以用在哪里
(1)、可以在jsp页面中直接书写el表达式,用于向浏览器输出内容
(2)、在标签的属性中使用el表达式,用于为标签的属性赋值
可以结合之前的scope例子来做个测试。在scopedestination.jsp页面做添加一段代码:
测试结果:
本来连对象都可以省了,直接${属性名}。
EL表达式语句在执行时,会调用pageContext.findAttribute方法,用标识符为关键字,分别从page、request、session、application四个域中查找相应的对象,找到则返回相应对象,找不到则返回”” (注意,不是null,而是空字符串)。
因为在scopeforward.jsp中定义的属性名就是和EL的隐含对象重名了,所以若是省略对象名,输出的将是对象信息。
EL表达式语言中定义了11个隐含对象,使用这些隐含对象可以很方便地获取web开发中的一些常见对象,并读取这些对象的数据。
${param.参数名}等价于 <%= request.getParameter("参数名")%>
举个例子在WebRoot目录下新建el文件夹,然后新建setparam.jsp
和getparam.jsp。
setparam.jsp的具体代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><% //防止中文乱码,在同一个请求内 request.setCharacterEncoding("UTF-8");%><jsp:forward page="getparam.jsp"> <jsp:param value="张三" name="username" /></jsp:forward>getparam.jsp具体代码如下:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>welcome EL<br>${param.username}<br>
测试结果:
${initParam.参数名 }等价于<%=getInitParameter("参数名") %>
用于获取初始参数。举个例子。
在WebRoot/WEB-INF/lib路径下的web.xml中加入一段代码:
然后再el文件夹中新建一个initparam.jsp,具体代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>${initParam.username}<!-- 等价于<%=getServletContext().getInitParameter("username")%> -->
测试结果:
网页源码:
cookie对象:
${cookie.key}取的是cookie对象,如 访问cookie的名称和值,需${cookie.key.name}或 ${cookie.key.value}
举个例子,获取session ID
在el中新建一个getcookie.jsp,具体代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> cooike name:${cookie.JSESSIONID.name}<br> cooike value:${cookie.JSESSIONID.value}
测试结果:
- Jsp入门第四章——EL表达式
- JSP——EL表达式
- jsp——el表达式
- JSP——EL表达式
- JSP——EL表达式学习笔记
- JSP笔记——EL表达式
- JSP详细篇——EL表达式
- JSP——EL表达式详细讲解
- JSP 笔记 —— EL 表达式语言
- JavaEE实战——jsp入门、El表达式、JSTL标签库
- JSP中EL表达式入门与简介
- 【JSP原理】EL表达式入门知识
- jsp入门、El表达式、JSTL标签库
- JSP(2)EL表达式入门
- 第八章El表达式第四节el表达式对象操作
- 【EL表达式】EL表达式入门
- 2.2Head First Servlet & Jsp——EL表达式原理
- 实验十三 JSP表达式语言——EL
- 【数据结构】算法2.3-2.7 线性表的顺序表示和实现
- Atitit js版本es5 es6新特性
- iOS进阶 - 是时候学习WKWebView了
- java 拦截器、过滤器、监听器
- 腾达U1 在windows10 10.0.14393.0环境下第三方WIFI断线问题解决方案
- Jsp入门第四章——EL表达式
- Intent使用Serializable以及Parcelable传递数据
- Android Studio从SVN服务器中检出项目(三)
- 如何判断JVM内存泄露
- NYOJ 880 还是打印菱形
- RecycleView隐藏部分Item
- Linux df和du不一致问题排查
- SPOJ DQUERY - D-query
- 算法总结(1)--最大储水量相关算法题(栈,优先队列模拟)