我对春天很陌生。从我的控制器中,我得到了列表输出。
[[Article@42e72033 id = 1, title = 'Hello', description = 'Description', author = 'eeee'], [Article@7702e860 id = 2, title = 'Hello', description = 'Description', author = 'eeee'], [Article@3c2731ff id = 3, title = 'Hello', description = 'Description', author = 'eeee'], [Article@157e7973 id = 4, title = 'qqqq', description = 'qqqqq', author = 'qqqqq']]
我想在我的article / view.html中使用标题,描述和作者,当前看起来像这样:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org" th:replace="~{fragments/layout :: layout (~{::body},'owners')}">
<body>
<table id="vets" class="table table-striped">
<thead>
<tr>
<th style="width: 150px;">Title</th>
<th>Description</th>
<th style="width: 120px">Author</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</body>
</html>
如何从列表中获取值并显示在正文部分?
答案 0 :(得分:3)
首先,您需要确保呈现视图的控制器将List属性传递给模型。如果您提供的list属性称为article,那么您的body标签应为该列表配置一个迭代器,例如:
<tbody>
<tr th:each="article : ${articles}">
<td th:text="${article.title}"><td>
<td th:text="${article.description}"><td>
</tr>
</tbody>
答案 1 :(得分:1)
mkez00的答案(+1)将解决您的问题。仍然我想向您展示没有任何模板引擎(Thymeleaf)的相同事物,就像您说的您对Spring来说是新手一样。
首先需要了解的几件事:
[这些来自JavaEE 5教程,但仍然相关。用各种可用资源做您自己的研究!]
现在解决您的问题,如果您将List
对象中的Article
对象放入控制器中的模型中,如下所示:
model.put("articles", yourListOfArticles);
在视图中(此处为JSP
),您可以执行以下操作以显示所需的表:
articles.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>Foo</title>
</head>
<body>
<table id="vets" class="table table-striped">
<thead>
<tr>
<th style="width: 150px;">Title</th>
<th>Description</th>
<th style="width: 120px">Author</th>
</tr>
</thead>
<tbody>
<c:forEach items="${articles}" var="article">
<tr>
<td><c:out value="${article.title}"/></td>
<td><c:out value="${article.description}"/></td>
<td><c:out value="${article.author}"/></td>
</tr>
</c:forEach>
</tbody>
</table>
</body>
</html>