EL表达式
<!-- 7.EL的关系运算符 -->
${param.score >60? "及格":"不及格" }
<br>
<%
List<String> names=new ArrayList<String>();
//names.add("adsss");
request.setAttribute("names", names);
%>
<!-- empty 可以作用于一个集合,若该集合不存在或集合中没有元素,其结果都为true否则为false -->
name is empty:${empty requestScope.names }
<br>
<br>
<!-- 只要方法时get方法的(只读属性),且不带参数的豆可以无限的“.”下去 -->
<!-- 6.其他隐含对象:pageContext等(cookie,header ,initParam只需了解) -->
pageContext:即为pageContext类型,只能读取属性
<br>
contextPath:${pageContext.request.contextPath }
<br>
sessionId:${pageContext.session.id }
<br>
sessionAttributeNames:${pageContext.session.attributeNames}
<br>
JSESSIONID:${cookie.JSESSIONID.name}---${cookie.JSESSIONID.value}
<br>
Accept-Language:${header["Accept-Language"] }
<br>
initParam: ${initParam.initName }
<br>
<!-- 5.与输入有关的隐含对象:param,paramValues -->
score:${param.score }<br>
<%--
<%= request.getParameter("score")%>
--%>
names:${paramValues.name[0]}
<br>
<!-- 相当于getClass的getName方法
-->
<%--
request.getParameterValues("name")[0].getClass().getName() ;
--%>
<br>
<!-- 4.隐含对象之与范围相关的:pageScope,requestScope,sessionScope,applicationScope
若为指定范围,会按照从小到大的顺序去找 -->
time:${time }<br>
time:${applicationScope.time }<br>
<%--
<%= application.getAttribute("time")%>
--%>
<!-- 3.EL可以进行自动的类型转换 -->
score:${param.score + 11 }
<br>
score:<%=request.getParameter("score")+11%>
<br>
<!--2. EL中的隐含对象 -->
<%
Customer2 cust2=new Customer2();
cust2.setAge(28);
request.setAttribute("customer", cust2);
%>
age:${customer.age }
<br>
<!-- 1.EL中的.或[] 运算符 -->
age:${sessionScope.customer.age }
<br>
age:${sessionScope.customer["age"] }
<!--
如果域对象中的属性名带有特殊字符,则使用[""]运算符会很方便
-->
<%--相当于EL表达式
Customer2 customer2=(Customer2)session.getAttribute("customer");
out.print(customer2.getAge());
--%>
--
<!-- 表单回显 -->
<!--
username:<input type="text" name="username"
value="<%=request.getParameter("username")==null?"":request.getParameter("username") %>" />
-->
username:<input type="text" name="username" value="${param.username }" />
访问时传递参数
<a href="el2.jsp?score=89&name=A&name=B&name=C">To el2</a>