JSPにてjava.util.Mapを扱う

code

---

<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8" autoFlush="true" buffer="8kb"

isErrorPage="false" isThreadSafe="true" session="true"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<%

response.setHeader("Pragma", "no-cache");

response.setHeader("Cache-Control", "no-cache");

response.addHeader("Cache-Control", "no-store");

response.setDateHeader("Expires", 0);

java.util.HashMap<String, String> map = new java.util.HashMap<String, String>();

map.put("a", "1");

map.put("b", "2");

map.put("c", "3");

map.keySet();

request.setAttribute("results", map);

%><?xml version="1.0" encoding="UTF-8" ?>

<results version="2.0">

<c:forEach var="map" items="${results}">

<data>

<c:out value="${map}" escapeXml="true" /></data>

</c:forEach> <c:forEach var="map" items="${results}">

<data>

<c:out value="${map.key}" escapeXml="true" /></data>

</c:forEach> <c:forEach var="map" items="${results}">

<data>

<c:out value="${map.value}" escapeXml="true" /></data>

</c:forEach> <c:forEach var="map" items="${results}">

<data <c:out value="${map.key}" escapeXml="true" />="<c:out value="${map.value}" escapeXml="true" />"></data>

</c:forEach>

</results>

---

結果

---

<?xml version="1.0" encoding="UTF-8"?>

<results version="2.0">

<data>a=1</data>

<data>b=2</data>

<data>c=3</data>

<data>a</data>

<data>b</data>

<data>c</data>

<data>1</data>

<data>2</data>

<data>3</data>

<data a="1"/>

<data b="2"/>

<data c="3"/>

</results>