由于EL可以简化JSP页面的书写,因此,在JSP的学习中,掌握EL是相当重要的。要使用EL表达式,首先要学习它的语法。EL表达式的语法非常简单,都是以“$("开始,以“]”结束的,具体格式如下。
${表达式}
需要注意的是,“${表达式}”中的表达式必须符合EL语法要求。关于EL语法的相关知识,将在下面的小节进行详细讲解。
为了证明EL表达式可以简化JSP页面,接下来通过一个案例来对比使用Java代码与EL表达式获取信息的不同。 首先, 在项目的src目录下创建包cn.itcast chapter07.servlet,在包中创建一个用于 存储用户名和密码的类MyServlet JavaBean的编码规范: 1.必须具有一个公共的无参的构造方法,这个方法可以是编译器自动产生的默认构造方法 2.提供公共的setter方法和getter方法,让外部程序设置和获取javaBean的属性 举个例子: Book
package cn.itcast.chapter07.javabean;
public class Book {
private double price;
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price=price;
}
}
pageContext对象
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
请求URI为: ${pageContext.request.requestURI}<br />
Content-Type响应头: ${pageContext.response.contentType}<br />
服务器信息为: ${pageContext.servletContext.serverInfo}<br />
Servlet注册名为: ${pageContext.servletConfig.servletName}<br />
</body>
</html>
Cookie对象
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
Cookie对象的信息:<br />
${cookie.userName }<br />
Cookie对象的名称和值:<br />
${cookie.userName.name }=${cookie.userName.value }
<% response.addCookie(new Cookie("userName","itcast")); %>
</body>
</html>
EL隐式对象
|