gpt4 book ai didi

spring - 如何使用 Thymeleaf 模板从 Json 加载数据

转载 作者:行者123 更新时间:2023-12-05 03:00:03 25 4
gpt4 key购买 nike

我有一个 rest api 返回一个 Json 值作为服务调用的输出。

例如:- https://localhost:8080/getEmployees/loadAll

这将返回以下 json 值例如:-

{
"employees":[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]
}

我需要将以下 json 值加载到我的 thymeleaf 表中。在正常情况下,在 spring 中使用模态在 Controller 中返回值可以将值重新调整为如下列表。

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="ISO-8859-1">
<title>Employee List</title>
</head>
<body>
<h1>Welcome</h1>
<br>
<h3>Employee List</h3>
<br />
<table border="1">
<tr>
<td>Employee First Name</td>
<td>Employee Last Name</td>
</tr>
<tr th:each="emp : ${empList}">
<td th:text="${emp.firstName}">First Name</td>
<td th:text="${emp.name}">Last Name</td>
</tr>
</table>
</body>
</html>

有没有一种方法可以使用 thymeleaf 使用上述 json 来完成此操作?

最佳答案

您可以使用以下结构执行类似的操作。

当您调用服务时

https://localhost:8080/getEmployees/loadAll

您需要使用 model.addAttribute 传递员工数据。

例如,假设您有以下方法:

@RequestMapping(value="/getEmployees/loadAll")
String getAllEmployees(Model model) {
model.addAttribute("empList", <your service here that generates the data>);
return "pagenamehere";
}

上面的方法,只会在你使用下面的url调用时执行:https://localhost:8080/getEmployees/loadAll它将添加您的 empList 数据作为属性。然后,返回字符串指示将加载的页面的名称。您将需要使用带有 thymeleaf 代码的自己的页面。

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="ISO-8859-1">
<title>Employee List</title>
</head>
<body>
<h1>Welcome</h1>
<br>
<h3>Employee List</h3>
<br />
<table border="1">
<tr>
<td>Employee First Name</td>
<td>Employee Last Name</td>
</tr>
<tr th:each="emp : ${empList}">
<td th:text="${emp.firstName}">First Name</td>
<td th:text="${emp.lastNname}">Last Name</td>
</tr>
</table>
</body>
</html>

现在,thymeleaf 将能够显示给定的数据。

关于spring - 如何使用 Thymeleaf 模板从 Json 加载数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57247470/

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