gpt4 book ai didi

java - 为什么我无法访问这个放入 Model 对象的列表到这个 Spring MVC 项目中?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:17:52 25 4
gpt4 key购买 nike

我是 Spring MVC 的新手,我有以下疑问:

在 Controller 中,我有这种方法可以处理指向 /consultazioneMinisteriale URL 的 HTTP 请求

    @RequestMapping(value = "/consultazioneMinisteriale", method = RequestMethod.GET)
public String consultazione(Locale locale, Model model) {

List<Twb1012Regione> listaRegioni = geograficaService.getListaRegioni();

return "utenteMinisteriale/consultazione";
}

正如您在方法中看到的那样,我检索了调用服务的 Twb1012Regione 对象列表,我正确地检索了该对象(使用调试器我看到它已正确初始化)

现在我希望这个列表在返回的 View 中可用,所以我以这种方式更改了以前的方法:

    @RequestMapping(value = "/consultazioneMinisteriale", method = RequestMethod.GET)
public String consultazione(Locale locale, Model model) {

List<Twb1012Regione> listaRegioni = geograficaService.getListaRegioni();
model.addAttribute(listaRegioni);
return "utenteMinisteriale/consultazione";
}

所以我只是将检索到的列表添加到 Model 对象中。

现在我正尝试通过我的 consultazione.jsp View 访问此对象,方法如下:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ page session="false"%>
<%@ taglib prefix="security" uri="http://www.springframework.org/security/tags" %>

<!DOCTYPE html>
<html>
<head>
<title>Home</title>
</head>

<body class="azure">
<h1>Hello World</h1>

<div> ${listaRegioni} </div>

<c:forEach items="${listaRegioni}" var="item">
TEST<br>
</c:forEach>
</body>
</html>

问题是它不起作用,我看不到这个 listaRegioni 对象的任何引用到我的 View 中(它只打印 Hello World 消息) .

为什么?我错过了什么?我该如何尝试解决这个问题?

最佳答案

您正在向没有名称的模型添加属性。

model.addAttribute(listaRegioni);

因此推断出一个名称,为此它查看集合中的类型并添加 List 后缀。因此属性的名称是 twb1012RegioneList 而不是 listaRegioni(正如您当前在 JSP 中所拥有的)。这在 naming conventions 中有描述。 .

最好在将参数添加到模型时明确命名参数。

model.addAttribute("listaRegioni", listaRegioni);

关于java - 为什么我无法访问这个放入 Model 对象的列表到这个 Spring MVC 项目中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32604039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com