首先了解一下EL表达式与JSP脚本表达式的区别:
区别 | JSP脚本表达式 | EL |
语法 | <%=m %> | ${m} |
输出到哪里的值 | 输出的是脚本变量 <% int m=5; %> | 输出的是作用域中的值 <% request.setAttribute(“m”, 5); %> |
1.使用el表达式时,有哪两种方式来获取相应的值?
EL获取域中存储的值
首先,el表达式只能从域对象中获取值
语法:
(1)$ {域名称.键名}:从指定域中获取指定键的值
⋅ 域名称:
①. pageScope从pageContext域中获取值。
②. requestScope从request域中获取值。
③. sessionScope从session域中获取值。
④. applicationScope从application(ServletContext)域中获取值。
举例:在request域中存储了name=张三
获取:${requestScope.name}(2)${键名}:表示依次从最小的域中查找是否有该键对应的值,直到找到为止。
EL获取Map集合中的值?
两种取数据的格式
方式一:map1.eee
方式二:map1[‘eee’]
方式二使用“[]”代替了方式一“.”,又因为是字符串类型所以加上单引号,这样可以避免出错,两种方式看情况选择使用;