一,EL表达式
使用 . 调用java对象的方法,方法名称是java对象类的set和get方法的set,get,再把方法名字首字母小写。格式:${}
以$开头,大括号开始,大括号结束。
例如:age:${sessionScope.customer.age} 找到session域的customer对象的age属性
一般都是以 . 来操作,偶尔也会使用到[]
例如,属性值带特殊符号就需要用中括号把属性给包起来,例子如下:
name:${sessionScope["com.aguigu.customer"].name}
el变量
${username}
它的意思是取出某一范围里名称为username的变量,因为没有指定哪一个范围,他会从默认的page范围找,找不到再从request,session,application,假如找到了就返回值,然后不继续找,但是全部范围都没找到就会返回null。
score的值是89,进行如下操作
score:${param.score + 11}
score:<%=request.getParameter("score") + 11%>
第一个的值是100,第二个是8911,也就是说el可以进行自动的类型转换。
param是el的隐含对象,可以获得请求参数。
二,EL的隐含对象(一共11个,分成三类)
1,与范围有关的
applicatioScope
seesionScope
requestScope
pageScope
2,与输入有关的
param(获取某个请求参数)
paramValues(获得某组请求参数)
3,其他隐含对象
cookie(获得某个cookie)
header(获得请求头)
headerValues
initParam(当前web应用的初始化参数)
pageContext(即为pageContext属性,只能读取信息)
--》$(pageContext.request.contextPath) 获得web应用名字
三,EL的关系运算符
el的关系运算符只能放在{}里边。
四,其他变量
empty 可以作用于一个集合,如果该集合不存在或者集合中没有元素,其结果都为true
List<String> names = new ArrayList<String>();
names is empty: ${empty requestScope.names}
五,EL函数