作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 hibernate 来获取与特定用户关联的主题。在 mainPage 中,我想查看用户的 firstName 和 LastName(这有效)和允许的主题。但是,出于某种原因,我无法成功地迭代放在 mainPage 中的主题列表。
在我的 Spring Controller 中,我有一个方法,如下所示:
@RequestMapping(value = "/signin", method = RequestMethod.POST)
public String SignIn(@ModelAttribute("user") User user, ModelMap modelMap){
String username = user.getUsername();
String password = user.getPassword();
User user1 = userService.getUser(username, password);
if(user1 != null){
List<Subject> subjectList = userService.getUserSubjects(user1.getId());
modelMap.addAttribute("subjects", subjectList);
modelMap.addAttribute("user", user1);
return "mainPage";
}
modelMap.addAttribute("ShowNotAuthenticated", true);
return "authentication";
}
mainPage.jsp
看起来像这样:
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h2>Current user: ${user.firstName} ${user.lastName}</h2> //this works
<br>
<h3>Allowed subjects:</h3>
<table>
<tr>
<td>
Subject Name
</td>
</tr>
<c:forEach items="${subjects}" var="x"> //doesn't work
<tr>
<td>
${x.name}
</td>
</tr>
</c:forEach>
</table>
</body>
</html>
这是调试期间的SignIn
方法:
这些是mainPage.jsp
中的图片:
Mykhailo Moskura
的建议也行不通:
最佳答案
从调试器屏幕截图中,我看到您的 subjectList
具有 Object[]
类型的元素。因此,您要么需要更改存储在该列表中的内容,要么尝试使用 ${x[1]}
而不是 ${x.name}
。
关于java - 无法遍历Jsp中的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53231651/
我是一名优秀的程序员,十分优秀!