首页 >
生活百科 > jstl标签foreach例子(使用JSTL标签foreach进行循环的实例)
jstl标签foreach例子(使用JSTL标签foreach进行循环的实例)
jk • 2023-04-18 11:11:52 • 生活百科
使用JSTL标签foreach进行循环的实例
在Web开发中,我们经常需要对一个数据集合进行遍历操作,展示其各个元素或执行一定的操作。这时,我们可以使用JSTL(JavaServer Pages Tag Library)标签库中的foreach标签来方便地进行循环处理。下面,我们以实例形式来说明JSTL标签foreach的使用。
该实例需求
某电商网站需要展示其多个商品的名字和价格。这些商品信息存储在一个List集合中,我们需要使用foreach标签循环遍历该集合,依次取出各个商品的名字和价格,并将其输出。
实例步骤
第一步:创建java类文件并实例化List集合对象
我们首先在Java项目中创建一个包,命名为com.jstlforeach.demo,并在该包中创建Java类文件,命名为Goods.java,该类用于存储商品信息。
在Goods类中,我们使用构造方法来初始化商品名称和价格,并提供了对应的get方法用于获取商品名称和价格。另外,我们使用java.util.List集合来存储多个Goods对象。
以下是Goods.java的代码:
```java
package com.jstlforeach.demo;
public class Goods {
private String name;
private double price;
public Goods(String name, double price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public double getPrice() {
return price;
}
}
```
接下来,我们在Main方法中实例化Goods类,创建商品信息数据集合。
```java
package com.jstlforeach.demo;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List goodsList = new ArrayList<>();
goodsList.add(new Goods(\"商品1\", 100.0));
goodsList.add(new Goods(\"商品2\", 200.0));
goodsList.add(new Goods(\"商品3\", 300.0));
}
}
```
第二步:在JSP页面中引入JSTL标签库
在JSP中,我们需要先引入JSTL标签库,这可以通过以下语句完成:
```jsp
<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" prefix=\"c\" %>
```
该语句引入了JSTL标签库的core标签库,并为其指定了一个前缀c,以便在后面调用JSTL标签时使用。
第三步:使用foreach标签进行循环遍历
我们可以使用标签循环遍历商品信息数据集合,并输出各个商品的名称和价格。
```jsp
${goods.name} |
${goods.price} |
```
该标签使用了三个重要属性:
- items属性:指定了要循环的对象,即存储商品信息的List对象goodsList。该属性的值类型可以是Collection、List、Map、Iterator等;
- var属性:定义了当前循环的变量名,即每个商品的信息。在该循环语句中,我们将其命名为goods;
- body属性:定义了要循环的内容,这里是一个tr表格行,包含了td表格单元格,用于展示商品名称和价格。
最后,我们通过${goods.name}和${goods.price}来获取当前商品的名称和价格,这里的${}是一种EL(Expression Language)表达式,用于获取显示数据。
完整代码如下:
```jsp
<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" prefix=\"c\" %>
<%
List goodsList = new ArrayList<>();
goodsList.add(new Goods(\"商品1\", 100.0));
goodsList.add(new Goods(\"商品2\", 200.0));
goodsList.add(new Goods(\"商品3\", 300.0));
%>
${goods.name} |
${goods.price} |
```
实例效果
以上代码将生成一个商品信息列表,内容如下:
商品名称 价格
商品1 100.0
商品2 200.0
商品3 300.0
小结
JSTL标签库简化了JavaWeb应用的开发,其核心标签之一可以很方便地对集合数据进行循环遍历和处理。在实际应用中,我们还可以结合其他标签一起使用,比如格式化标签、条件判断标签等。为提高JSP页面的可读性和可维护性,JSTL标签的使用无疑是一种不错的选择。