${data}
可以返回名为"data"的属性的值,依次从page,request,session,application四个域中寻找。
${person.name}
可以返回属性为person的对象的“name"属性,即使这个属性是私有的,它内部也会通过反射技术,调用get方法,来获取其对应的属性信息。
如果对象是复杂对象,只需要一路用 ‘.' 就可以获取对象属性的值。
若是用集合带过来数据,比如ArrayList<Person>list集合,要取单个元素只需 ${list[0].name} 便可以对单个元素获取。
若是用Map带过来数据,
<%
Map map=new HashMap();
map.put("a",new Person("aa"));
map.put("b",new Person("bb"));
map.put("c",new Person("cc"));
request.setAttribute("map",map);
%>
${map.bb.name} 便可以取出”bb“字符串。
总结:el表达式通常用"."号,"."号取不出来时,才会用 [ ]去取。
el表达式可以用来获取当前web project的路径, <a href = "$(pageContext.request.contextPath)/index.jsp">点我</a>
这样不会把项目名称路径写死,导致修改麻烦。