表达式语言(EL)
1.格式:${属性名称},作用是进行内容显示。
例如:
<% request.setAttribute("name","m"); %> <!--表达式输出--> <h2>${name}</h2> ----->name=m
2.表达式语言内置对象
<% pageContext.setAttribute("info","page范围属性"); request.setAttribute("info","request范围属性"); session.setAttribute("info","session范围属性"); application.setAttribute("info","application范围属性"); %> <!-- 表达式输出 --> <h3>${pageScope.info }</h3> <h3>${requestScope.info }</h3> <h3>${sessionScope.info }</h3> <h3>${applicationScope.info }</h3>
输出:
page范围属性
request范围属性
session范围属性
application范围属性
pageContext可以访问request、session、application的实例:调用方法是通过反射机制完成的。
list<Person> list = new Arraylist<Person>();
Person p = new Person(); p.setName("mxzer"); p.setAge(20);
list.add(p);
Person p2 = new Person();
p2.setName("mxz");
p2.setAge(22);
list.add(p2);
request.setAttribute("person","p");//单个对象
request.setAttribute("all",list);//list集合
request.getRequestDispatcher("hello.jsp").forward(req, resp);
<% String person = (String)request.getAttribute("person"); %> <h3>${person.name }</h3> <h3>${person.age }</h3>
<%
List list= (List)request.getAttribute("all");
if(list != null){
Iterator it = list.iteraror();//实例化
while(it.hasNext()){//迭代输出
pageContext.setAttribute("pp",it.next());//设置page属性,属性只在本页起作用!
}
%>
<h3>${pp.name }</h3>
<h3>${pp.age }</h3>
3.运算符
4.关系运算符
5.逻辑运算符
6.其他运算符
Author