How to iterate list on JSP in Spring MVC
To iterate the ArrayList or any list on JSP in Spring MVC framework, you can use the JSTL (JavaServer Pages Standard Tag Library) library. It provides many features like handling core, database operation, function, and i18n support.
To use the JSTL core tags in JSP pages by adding the following taglib
directive:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
And to iterate list values, JSTL core have <c:forEach/> tag. It will display the list values one by one.
<c:forEach var="emp" items="${empList}">
...
</c:forEach>
Dependency Required
You need to add Spring MVC and JSTL dependency in your project.
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
Controller
Create a controller ListController
class that returns the list to the view.
package org.websparrow.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class ListController {
@RequestMapping(value = "/list", method = RequestMethod.GET)
public ModelAndView listAction() {
List<String> empList = new ArrayList<>();
empList.add("Atul");
empList.add("Abhinav");
empList.add("Prince");
empList.add("Gaurav");
ModelAndView mv = new ModelAndView();
mv.setViewName("index");
mv.addObject("empList", empList);
return mv;
}
}
Views
Create a JSP page to iterate the list.
<%@ page isELIgnored="false" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<body>
<h2>How to iterate list on JSP in Spring MVC</h2>
<p><b>Simple List:</b><p>
${empList}
<p><b>Iterated List:</b><p>
<ol>
<c:forEach var="emp" items="${empList}">
<li>${emp}</li>
</c:forEach>
</ol>
</body>
</html>
Output
Run the application and hit the following URL into your browser…
localhost:8080/spring-mvc-iterate-list/list

References
Download Source Code: how-to-iterate-list-on-jsp-in-spring-mvc.zip
Similar Posts
- Spring Boot + Angular 8 CRUD Example
- Spring AOP around advice (MethodInterceptor) example using XML configuration
- Spring Boot + Jasper Report + MySQL Database Example
- Spring Boot Forgot Password Example
- Spring AOP + AspectJ @Before, @After, @AfterReturning, @AfterThrowing, and @Around Annotation Example
- Spring AOP AfterThrowing Advice example using XML configuration
- Spring Collection (List, Set and Map) Dependency Injection Example
- Failed to start bean ‘documentationPluginsBootstrapper’; nested exception is java.lang.NullPointerException
- Spring Boot Cookies Example
- Spring Boot – Handling Errors in WebClient