EL表达式
EL表达式
1、什么是EL表达式?
EL(Express Language)表达式可以嵌入在jsp页面内部,减少脚本语言的编写。EL出现的目的是要替代JSP页面中脚本的缩写。
2、EL表达式的作用
获得四大域(pageContext,request,session,application)当中的数据,并在页面显示。一般使用EL表达式,常用的是从一个对象中取出它的属性值,比如取出某一个学生的姓名。
使用EL表达式取出作用域中的值:
1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="UTF-8" import="java.util.*"%> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 4 <html> 5 <head> 6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 7 <title>Insert title here</title> 8 </head> 9 <body> 10 使用作用域存储数据</br> 11 <% 12 pageContext.setAttribute("name", "pageContext"); 13 request.setAttribute("name","request"); 14 session.setAttribute("name", "session"); 15 application.setAttribute("name", "application"); 16 %> 17 使用EL取出四个作用域中的值</br> 18 ${pageScope.name};</br> 19 ${requestScope.name};</br> 20 ${sessionScope.name};</br> 21 ${applicationScope.name};</br> 22 23 <br>-------------集合数据-------------</br> 24 <% 25 List list=new ArrayList(); 26 list.add("11"); 27 list.add("22"); 28 list.add("33"); 29 pageContext.setAttribute("list",list); 30 %> 31 使用EL表达式取出作用域中集合的值</br> 32 ${list[0]}; 33 ${list[1]}; 34 ${list[2]}; 35 36 <br>-----------map数据-------------</br> 37 <% 38 Map map=new HashMap(); 39 map.put("id","s1233"); 40 map.put("age",22); 41 map.put("add","南京"); 42 pageContext.setAttribute("map",map); 43 %> 44 使用EL表达式取出作用域中map的值</br> 45 ${map.id}; 46 ${map.age}; 47 ${map.add}; 48 49 </body> 50 </html>
运行结果:
简写:
1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="UTF-8" import="java.util.*"%> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 4 <html> 5 <head> 6 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 7 <title>Insert title here</title> 8 </head> 9 <body> 10 使用作用域存储数据</br> 11 <% 12 pageContext.setAttribute("name", "pageContext"); 13 request.setAttribute("name","request"); 14 session.setAttribute("name", "session"); 15 application.setAttribute("name", "application"); 16 %> 17 ${name}; 18 19 20 </body> 21 </html>
范围:默认从小到大找,找到之后不会再去找其他的。
3、EL的11个内置对象
${对象名.成员}