实验7-表达式语言与JSTL

实验7(1) 表达式语言的使用

一、实验目的

1. 了解表达式语言的功能; 2. 掌握表达式语言的使用。

二、实验原理

表达式语言(EL)是JSP 2.0新增的功能。它是一种简洁的数据访问语言,通过它可以在JSP页面中方便地访问应用程序数据,无需使用JSP表达式(<%=和%>)。EL的目标是使动态网页的设计、开发和维护更加容易。

EL的特点是访问数据可以使用点(.)运算符或方括号([])运算符;可以访问隐含对象;有自己的运算符构造表达式;可以使用Java语言编写的函数等。

三、实验内容与步骤

(一)表达式语言运算符的使用

下面的JSP页面operator.jsp演示了EL运算符的使用: <%@ page contentType=\

JSP 2.0 Expression Language - Basic Arithmetic

JSP 2.0 表达式语言 - 基本算术运算符


该例说明了基本的表达式语言的算术运算符的使用,其中包括加(+),减(-), 乘(*),除(/ 或 div), 取余 (% 或 mod)。

EL 表达式 结果
\\${1} ${1}
\\${1 + 2} ${1 + 2}
\\${1.2 + 2.3} ${1.2 + 2.3}
\\${1.2E4 + 1.4} ${1.2E4 + 1.4}
\\${-4 - 2} ${-4 - 2}
\\${21 * 2} ${21 * 2}
\\${3/4} ${3/4}
\\${3 div 4} ${3 div 4}
\\${3/0} ${3/0}
\\${10%4} ${10%4}
\\${10 mod 4} ${10 mod 4}
\\${(1==2) ? 3 : 4} ${(1==2) ? 3 : 4}

图7.1 operater.jsp页面的运行结果

(二)访问作用域变量

编写一个名为EmployeeBean的JavaBean,其中包括3个属性eno表示雇员号、ename表示雇员名和ecompany表示雇员公司名。

【步骤1】EmployeeBean.java程序代码 package com.beans;

public class EmployeeBean { private String eno = \ private String ename = \ private String ecompany = \

public EmployeeBean() { }

public void setEno(String eno){ this.eno = eno; }

public void setEname(String ename){ this.ename = ename;

}

public void setEcompany(String ecompany){ this.ecompany = ecompany; }

public String getEno(){ return eno; }

public String getEname(){ return ename; }

public String getEcompany(){ return ecompany; } }

【步骤2】编写一个JSP页面,在其中通过表单输入雇员信息,将请求转发到一个Servlet。

<%@ page contentType=\

请输入雇员信息:

雇员号:雇员名:公司名:

【步骤3】下面的Servlet从JSP页面得到客户信息

package com.control;

import java.io.*;

import javax.servlet.*; import javax.servlet.http.*;

import com.beans.EmployeeBean;

public class EmployeeServlet extends HttpServlet{

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException{

String eno = request.getParameter(\

String ename = request.getParameter(\

String ecompany = request.getParameter(\ EmployeeBean employee = new EmployeeBean(); employee.setEno(eno);

employee.setEname(ename);

employee.setEcompany(ecompany);

request.setAttribute(\ RequestDispatcher view =

request.getRequestDispatcher(\ view.forward(request, response); } }

【步骤4】下面的JSP使用EL表达式显示用户的信息

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4