このチュートリアルでは、JSTLの

c:forEach`タグを使って

List`値を出力する方法を説明します。


P.SこのWebプロジェクトでは、Spring MVCフレームワークv3.2

1.プロジェクトの構成

標準のMavenプロジェクトであるプロジェクトのディレクトリ構造を見直してください。


プロジェクト構造、幅= 447、高さ= 396

プロジェクトの依存関係

SpringおよびJSTLライブラリを追加する。

pom.xml

    <properties>
        <spring.version>3.2.2.RELEASE</spring.version>
        <jstl.version>1.2</jstl.version>
    </properties>

    <dependencies>

        <!-- jstl -->
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>${jstl.version}</version>
        </dependency>

        <!-- Spring Core -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>

    </dependencies>

3.スプリングコントローラ

`List`を返すSpringコントローラ。

MainController.java

package com.mkyong.web.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 MainController {

    @RequestMapping(value = "/", method = RequestMethod.GET)
    public ModelAndView getdata() {

        List<String> list = getList();

       //return back to index.jsp
        ModelAndView model = new ModelAndView("index");
        model.addObject("lists", list);

        return model;

    }

    private List<String> getList() {

        List<String> list = new ArrayList<String>();
        list.add("List A");
        list.add("List B");
        list.add("List C");
        list.add("List D");
        list.add("List 1");
        list.add("List 2");
        list.add("List 3");

        return list;

    }

}

4. JSPページ

コントローラから返された

List`を出力するために、JSTLの

c:forEach`タグを使います。

index.jsp

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<body>
    <h2>Spring MVC and List Example</h2>

    <c:if test="${not empty lists}">

        <ul>
            <c:forEach var="listValue" items="${lists}">
                <li>${listValue}</li>
            </c:forEach>
        </ul>

    </c:if>
</body>
</html>


spring mvc list example、width = 632、height = 385

5.ソースコードをダウンロードする

ダウンロード:

SpringMVC-Lists-Example

(11 KB)

参考文献

  1. link://spring-mvc/spring-mvc-dropdown-box-example/[Spring MVCドロップダウン

JavaDoc]