EL语言表达式 (二)【EL对数据的访问】

一、访问方式:

  EL中访问数据和Java中访问数组的方式相同,即可以通过“[]”和“.”运算符进行访问。而且两种形式是等价的。如:

    访问JavaBean对象userInfo中的id属性,可以写成下面两种形式:

      ${userInfo.id}和${userInfo[id]}

   EL访问数据例子:

      

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 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>EL中数据的读取</title>
 8 </head>
 9 <body>
10     <%
11         String[] arr = {"Java web从入门到精通","Java开发规范手册","Java网络编程"};
12         request.setAttribute("book",arr);    //将数组保存到request对象中
13     %>
14     <%
15         String[] arr1 = (String[])request.getAttribute("book");    //获取保存到request范围内的变量
16         //通过循环和EL输出一维数组的内容
17         for(int i = 0;i < arr1.length;i++){
18             request.setAttribute("requestI", i);
19         
20     %>
21     ${ requestI }: ${ book[requestI] }<br> <!-- 输出数组中第i个元素 -->
22     <%
23         }
24     %>
25 </body>
26 </html>

运行以上代码结果如下:

 二、EL语言表达式不仅仅可以输出字符和字符串,还可以对集合中的内容进行输出。

           例:向session域中保存一个包含3个元素的List集合对象,并应用EL输出该集合的全部元素。

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <%@ page import="java.util.*" %>
 5 <html>
 6 <head>
 7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 8 <title>EL获取指定元素</title>
 9 </head>
10 <body>
11     <%
12         List<String> list = new ArrayList<String>();    //声明一个List集合的对象
13         list.add("饼干");
14         list.add("牛奶");
15         list.add("果冻");
16         session.setAttribute("goodList",list);    //将List对象保存到session对象中
17         
18         List<String> list1 = (List<String>)session.getAttribute("goodList");    //获取保存到session范围内的对象
19         for(int i=0;i<list1.size();i++){
20             request.setAttribute("requestI", i);    //将循环增量保存到request范围内的对象中
21     %>
22     ${ requestI }: ${ goodList[requestI] }<br>    <!-- 输出集合的第i个元素 -->
23         <%} %>
24        
25 </body>
26 </html>

运行以代码将显示如下结果:

 

  

原文地址:https://www.cnblogs.com/lihuibin/p/7718810.html