admin 管理员组

文章数量: 1086019


2024年1月5日发(作者:java代码获取mysql最大值主键)

实验15 JSP 标准标签库(JSTL)

15.1实验目的

1.理解什么是JSTL;

2.掌握JSTL的配置方法;

3.掌握核心标签库的使用技巧;

4.掌握国际化和格式化标签库的使用技巧。

15.2 实验环境

1.MyEclipse插件平台、

2.Weblogic(或者Tomcat)容器

15.3实验知识背景

15.3.1 JSTL简介

JSTL (JSP Standard Tag Library, JSP标准标签库)是一个开源项目,是一个标准的已定制好的JSP标签库。它可以替代Java代码实现各种功能,如:输入输出、流程控制、迭代、数据库查询及国际化的应用等。减少JSP中脚本代码的数量。

网络上下载 后,解压后得到两个文件:和,其中:包含的是JSTL规范中定义的接口和类,包含的是Jakarta小组对JSTL的实现和JSTL中5个标签库的TLD文件。将上述两个文件直接复制到应用程序的WEB-INFlib目录下即可。在MyEclipse等开发工具中,已包含JSTL内容,不必下载、安装,只要在创建web项目时选择JSTL即可,如图15-1、图15-2所示。

图15-1选择JSTL版本

图15-2 添加包的引用

15.3.2 JSTL语法基础

核心标签库通用格式:

<%@ taglib prefix="c" uri="/jsp/jstl/core"%>

下面是常用的核心标签库的标签介绍。

1

(1) :主要用来显示数据的内容,如同 <%=表达式 %>

格式1:没有标签体

格式2:有标签体

默认值

(2) :用来将变量存储在JSP范围中或JavaBean的属性中。

格式1:将 value的值储存在scope的范围内的 varName 变量中

标签体内容

格式2:将 value 的值保存至 target 对象的属性中

< c:set value=“value” target=“对象名” property="propertyName" />

标签体内容

(3) 条件判断

格式:

具体内容

(4) :为其它标签提供URL的附加参数,如标签中

格式:

参数值

(5) :实现URL跳转

格式:

(代表查询字符串(Query String)参数)

(6) 多分支判断:.

格式:

body

2

body

„„

[

body

]

(7) :用于对一个集合中的元素进行循环迭代操作,或按指定的次数重复迭代执行

标签体中的内容 。

格式1:在集合对象中迭代

标签体内容

< /c:forEach>

格式2:按指定次数进行迭代

标签体内容

< /c:forEach>

(8) :用来浏览一字符串中所有的成员,其成员是由定义符号(delimiters)所

分隔的。格式:

[varStatus="varStatusName"] [begin="begin"] [end="end"] [step="step"]>

标签体内容

15.4 实验内容及步骤

1、问题描述:用JSTL 与 EL技术进行实现。一个简单的用户注册后显示注册信息的功能。图15-3为用户注册页面,当用户点击“注册”按钮,则提取用户输入信息,运行效果如图15-4所示。

3

图15-3 用户注册页面

图15-4注册信息显示页面

(1) 新建web项目,先把和拷贝到Web-INF目录中,然后添加引用,项目结构如图15-5所示。

图15-5项目结构图

(2)在项目中新建页面;

源代码:

<%@ page language="java" import=".*" pageEncoding="utf-8"%>

注册信息

用户注册


用 户 名:

4

密    码:

密码确认:

性别:

业余爱好:

看书 

上网 

音乐 

旅游 

体育 

  

(3)新建页面

源代码:

<%@ page language="java" import=".*" pageEncoding="utf-8"%>

<%@ taglib prefix="c" uri="/jsp/jstl/core"%>

<%racterEncoding("utf-8"); %>

EL+JSTL例子

用户姓名:${}

用户密码:${rd }

确认密码:${rd }

5

性别:${=="0"? "女":"男" }

业余爱好:

${hobby}

2、问题描述:在上面问题1的项目中,继续编写2张JSP页面,要求可以实现用表格显示商品名字和单价,允许用户输入购买的数量,如图15-6所示。当用户点击“提交”按钮后,则提取用户输入数据,进行运算求出货品的总价并且输出。

图15-6 显示商品信息

(1)在项目中新建页面;

源代码:

<%@ page contentType="text/html;charset=GB2312"%>

<%@ page import=".*"%>

6

货号

单价

数量

p001

24

p002

18

p003

35

(2)在项目中新建页面;

<%@ page contentType="text/html;charset=gb2312"%>

<%@ taglib prefix="c" uri="/jsp/jstl/core"%>

${[]*[] }

货号 单价 数量 总价
${[] } ${[] } ${[] }

7

项目部署到weblogic后,运行效果如下:先输入货物数量,如图15-7所示。

图15-7 输入购买数量

然后计算出货物的总价,如图15-8所示。

图15-8 计算货物总价

15.5实验总结

本次实验主要练习了常用的JSTL标签的使用。JSTL结合前面学习的EL,可以近一步简化Web程序开发的流程,让非Java程序员也能很快上手,实现快速的动态页面开发。

15.6课后思考题

1.要使用JSTL,需要包含哪两个jar包,它们安装在什么位置?

2.使用JSTL时,相应的taglib指令应如何书写?

3.标签的功能是什么?属性value、escapeXml、default分别有什么含义?

4.标签的功能是什么?属性var、value、scope、target、property各有什么含义?

8


本文标签: 标签 项目 迭代 用户 页面