是否可以使用Spring框架在JSP页面中显示字符串的可变长度列表(或集合)?
目前我的Java控制器中有以下内容: -
@Controller
@RequestMapping("/")
public class HelloController
{
@RequestMapping(method = RequestMethod.GET)
public String printHello(ModelMap model)
{
model.addAttribute("message1", "Cat");
model.addAttribute("message2", "Dog");
model.addAttribute("message3", "Fish");
model.addAttribute("message4", "Bird");
return "hello";
}
}
目前我在“hello.jsp”中有以下内容: -
<%@ page contentType="text/html; charset=UTF-8" %>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<p>${message1}</p>
<p>${message2}</p>
<p>${message3}</p>
<p>${message4}</p>
</body>
</html>
是否可以使用可变长度列表(或设置)来执行此操作?
感谢您的时间,
詹姆斯
答案 0 :(得分:1)
将List
对象放入模型中,并使用<c:forEach>
循环迭代列表。
model.addAttribute("messages", Arrays.asList("Cat", "Dog", "Fish", "Bird"));
<c:forEach var="message" items="${messages}">
<p>${message}</p>
</c:forEach>
答案 1 :(得分:1)
将您的键和值对放入Map并将其设置为模型对象。
使用jsp页面中的jstl foreach循环迭代Map对象,并在键值pait中获取所需的输出
(1)Write your Controller
Map<String, String> messageList = new HashMap<String, String>();
messageList.put("message1", "Cat");
messageList.put("message2", "value2");
messageList.put("message3", "value3");
messageList.put("message4", "value4");
model.addAttribute("messageList",messageList);
(2)JSP page
<c:forEach var="msg" items="${messageList}">
${msg.key} : ${msg.value}
</c:forEach>