The <c:forEach> tag is used to iterate over a collection of data such as arrays. A common use of this tag is to produce a HTML table containing data gathered from SQL query. Using this tag we can break the input data into multiple parts based on the delimiter. This is similar as for loop in java.
The syntax of <c:forEach> Tag
<c:forEach attribute> body content </c:forEach>
The attributes of <c:forEach> Tag
- items: This specifies the collection of items to iterate in the loop. The collection can be in the form of array list, maps …etc.
- begin: This specifies the start index of the iteration. Iteration starts at this value. This is optional attribute.
- end: This specifies end index of the iteration. Iteration ends when index reaches this value. This is also optional attribute.
- step: This specifies an optional increment for the loop, the default value is 1.
- varStatus: This specifies name of the scoped variable which holds the loop status of the current iteration.
Example of <c:forEach> Tag
</pre> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.util.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <html> <head> <title>JSTL Example</title> </head> <body> <h3>JavaBeat Tutorial List.</h3><br> <% List list = new ArrayList(); list.add("Java"); list.add("Spring"); list.add("Hibernate"); list.add("JSP"); list.add("Servlet"); list.add("JSTL"); list.add("Flex"); list.add("HTML5"); list.add("CSS3"); request.setAttribute("list", list); %> Tutorials <br> <c:forEach var="i" items="${list}"><br> ${i} </c:forEach> </body> </html> <pre>
Steps for Execution
- Save this file as example.jsp in your eclipse IDE.
- Now select this jsp file, right mouse click and select Run as ->Run on server
Output
When the execution process is completed successfully we will get the following output :
Previous Tutorial : JSTL Core c:remove Tag :: Next Tutorial : JSTL Core c:forToken Tag