搜集的资料,适当编辑并可能有所改动,同时为了保存和方便。感谢原作者!
------------------------------------------------
http://xiaofengxp.iteye.com/blog/507556
一、什么是EL
EL即Expression Language(表达式语言)。在使用JSP中标准动作一般是操作JavaBean的属性,JavaBean的属性只能为基本数据类型,并且不能进行逻辑操作。而EL和JSTL可以解决这些问题。
EL的功能与<jsp:getProperty />类似,但是更加简洁。
二、EL的语法
${bean.name}实质是调用bean的getName()方法。
示例1
<% request.setAttribute("name","张三"); %> ${name }
以上代码将输出"张三"。
示例2
<jsp:useBean id="stu" class="entity.Student" scope="request" /> <jsp:setProperty name="stu" property="name" value="张三" /> <jsp:setProperty name="stu" property="age" value="22" /> 姓名:${stu.name} <br> 年龄:${stu["age"]}
以上代码将输出"张三"和22
三、EL隐式对象
EL隐式对象包括作用域访问对象和参数访问对象。
1、作用域访问对象
EL表达式语言查找属性时按照作用域范转从小到大查找,找到即返回属性的值,不再去其它范围内查找。
示例3
<% pageContext.setAttribute("name","张三"); request.setAttribute("name","李四"); session.setAttribute("name","王五"); application.setAttribute("name","赵六"); %> ${name }
上面的示例将查找到张三。如果想要找到其它范围内的值,应该使用requestScope等隐式对象。如:
${requestScope.name}
2、参数访问对象
示例4
index.jsp:
<a href="main.jsp?name=admin">main.jsp</a>
main.jsp:
${param.name }
paramValues的用法: