如何在jsp中访问ModelMap?

如何从jsp中的ModelMap访问对象,以便可以在其上调用方法?目前,我收到此错误:

Syntax error on token "$", delete this token

JSP

<body>

<% MenuWriter m = ${data.menus} %>

<%= m.getMenus()%>

</body>

爪哇

@Controller

@RequestMapping("/dashboard.htm")

@SessionAttributes("data")

public class DashBoardController {

@RequestMapping(method = RequestMethod.GET)

public String getPage(ModelMap model) {

String[] menus = { "user", "auth", "menu items", };

String[] files = { "menu", "item", "files", };

MenuWriter m = new MenuWriter(menus, files);

model.addAttribute("menus", m);

String[] atocs = { "array", "of", "String" };

model.addAttribute("user_atocs", atocs);

return "dashboard";

}

}

回答:

<% %>语法已被弃用,不应该使用了。

在现代JSP中,您的JSP片段的等效项是:

<body>

${menus.menus}

</body>

显然,这看起来很令人困惑,因此为了清楚起见,您可能需要考虑重命名模型的各个部分。

另外,您的注释

@SessionAttributes("data")

这里没有任何作用,因为您没有ModelMap使用键输入data。仅当您要在整个会话中保留模型数据时,此功能才有用。

以上是 如何在jsp中访问ModelMap? 的全部内容, 来源链接: utcz.com/qa/412981.html

回到顶部