EL表达式主要作用:
1.获取数据
EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的WEB域中检索java对象,获取数据.
2.执行运算:
利用EL表达式可以再JSP页面中执行一些基本的关系运算,逻辑运算和算术运算,以JSP页面中完成一些简单的逻辑运算
下面的例子:怎么获取数据,以及简单的逻辑运算
<%@page import="cn.huaxin.web.User"%>
<%@page import="java.util.Map"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.util.List"%>
<%@page import="java.util.ArrayList"%>
<%@page import="cn.huaxin.web.tag.Address"%>
<%@page import="cn.huaxin.web.tag.Person"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String name ="aaa";
request.setAttribute("name", name);
%>
${name}<br/>
<hr>
<%
Address address = new Address("湖南");
Person p = new Person(21,"aaa",address);
request.setAttribute("person", p);
%>
${person.address.name}<br/>
<hr>
<%
List list = new ArrayList();
Address address1 = new Address("湖南");
Person p1 = new Person(21,"aaa",address1);
list.add(p1);
Address address2 = new Address("湖南");
Person p2 = new Person(21,"bbb",address2);
list.add(p2);
Address address3 = new Address("湖南");
Person p3 = new Person(21,"cc",address3);
list.add(p3);
request.setAttribute("list",list);
%>
<hr>
<c:forEach var="person" items="${list}">
${person.name}<br/>
${person.age}<br/>
${person.address.name}
</c:forEach>
<hr>
<%
Map map = new HashMap();
Address address4 = new Address("湖南");
Person p4 = new Person(21,"aaa",address4);
map.put("1", p4);
Address address5 = new Address("湖南");
Person p5 = new Person(21,"bbb",address5);
map.put("2" , p5);
Address address6 = new Address("湖南");
Person p6 = new Person(21,"cc",address6);
map.put("3", p6);
request.setAttribute("map",map);
%>
<c:forEach var="me" items="${map}">
${me.key} == ${me.value.name}<br/>
</c:forEach>
<%
List<String> list1 = new ArrayList();
/*
list1.add("1111");
list1.add("2222");
list1.add("3333");
request.setAttribute("list1", list1);
*/
%>
<hr>
<c:if test="${!empty(list1) }">
<c:forEach var="str" items="${list1}">
${str.toString()}<br/>
</c:forEach>
</c:if>
<c:if test="${empty(list1) }">
对不起没有数据。<br/>
</c:if>
<%
User user = new User("张仨","女");
request.setAttribute("user", user);
%>
${user==null ?"对不起没有登录" : user.name}
<input type="radio" name="sex" value="男"${user.sex=='男'? 'checked':'' }>男
<input type="radio" name="sex" value="女"${user.sex=='女'? 'checked':'' }>女
</body>
</html>