[英]Spring thymeleaf doesn't iterate over list
I am trying to iterate over an List and show the results in a table, but the table stays empty. 我试图遍历一个List并在一个表中显示结果,但是该表保持为空。
@RequestMapping(value="/home")
public String home(Model model) throws IOException {
List<OrderNotify> notifications = new ArrayList<OrderNotify>();
for (int i = 0; i < 10; i++) {
OrderNotify notification = new OrderNotify("1", "2", "3", "4");
notifications.add(notification);
}
model.addAttribute("notifications", notifications);
return "home";
}
<table id="handle" style=" margin:auto">
<tr>
<th>Bestellnummer</th>
<th>Datum</th>
<th>Status</th>
<th>Handlung erforderlich</th>
</tr>
<tr th:each="notify : ${notifications}">
<td th:text="${notify.orderid}"></td>
<td th:text="${notify.date}"></td>
<td th:text="${notify.status}"></td>
<td th:text="${notify.handle}"> </td>
</tr>
</table>
public class OrderNotify {
public String orderid;
public String date;
public String status;
public String handle;
public OrderNotify(String orderid, String date, String status, String handle) {
this.orderid = orderid;
this.date = date;
this.status = status;
this.handle = handle;
}
public List<String> getAll(){
return null;
}
public String getOrderid() {
return orderid;
}
public void setOrderid(String orderid) {
this.orderid = orderid;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getHandle() {
return handle;
}
public void setHandle(String handle) {
this.handle = handle;
}
}
I expected do see 10 rows with the same information of the OrderNotify objects of the list, but it was empty. 我预计会看到10行具有与列表的OrderNotify对象相同的信息,但它为空。 I looked at the source code in the browser and got following result:
我在浏览器中查看了源代码,并得到以下结果:
<tr th:each="notify : [com.example.spring.utils.OrderNotify@42b3c931, com.example.spring.utils.OrderNotify@76af8a32, com.example.spring.utils.OrderNotify@28025a03, com.example.spring.utils.OrderNotify@5e6eadf0, com.example.spring.utils.OrderNotify@2481d4d, com.example.spring.utils.OrderNotify@83ce92c, com.example.spring.utils.OrderNotify@3254786a, com.example.spring.utils.OrderNotify@197e42fd, com.example.spring.utils.OrderNotify@5b1e86ea, com.example.spring.utils.OrderNotify@3484712c]">
<td th:text=""></td>
<td th:text=""></td>
<td th:text=""></td>
<td th:text=""> </td>
</tr>
Thymeleaf and JSP are two different server side rendering templates. Thymeleaf和JSP是两个不同的服务器端渲染模板。 You can't use them simultaneously without configurations.
没有配置,您将无法同时使用它们。
Basing on your codes, you should update settings for using Thymeleaf: 根据您的代码,您应该更新使用Thymeleaf的设置:
a. 一种。 change home.jsp to home.html
将home.jsp更改为home.html
b. b。 move home.html to the path: src/main/resources/templates
将home.html移至路径:src / main / resources / templates
c. C。 config Thymeleaf in application.properties:
在application.properties中配置Thymeleaf:
# Thymeleaf
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.mode=HTML5
spring.thymeleaf.cache=false
d. d。 config Thymeleaf dependency in pom.xml
pom.xml中的配置Thymeleaf依赖项
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
For Viewing templates, SpringBoot recommends use Thymeleaf instead of JSP, see more for details. 对于Viewing模板,SpringBoot建议使用Thymeleaf而不是JSP,有关详细信息,请参阅更多内容。
For using Thymeleaf and JSP simultaneously in SpringBoot app, you need to configure more. 为了在SpringBoot应用程序中同时使用Thymeleaf和JSP,您需要配置更多。 Below articles for your reference:
以下文章供您参考:
Using both Thymeleaf and JSP 同时使用Thymeleaf和JSP
https://www.oodlestechnologies.com/blogs/Use-Thymeleaf-And-JSP-Simultaneously-In-Spring-Boot-App/ https://www.oodlestechnologies.com/blogs/Use-Thymeleaf-And-JSP-Simultaneously-In-Spring-Boot-App/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.