[英]Thymeleaf table not displaying on html page in Spring Boot app
我有一个通过自定义select语句填充到数据库的表。 以前可以使用,但现在不显示任何值,甚至不显示默认值。
我创建了表标题,这是HTML中的内容声明:
<tr th:each="user : ${listUser}">
<td>
<a th:href="@{/editUser(user_id=${user.user_id})}">
<span th:text="${user.user_id}">Default ID</span>
</a>
</td>
<td th:text="${user.username}">Default username</td>
<td th:text="${user.email_address}">Default email</td>
<td th:text="${user.role_code}">Default role code</td>
<td th:text="${user.enabled_ind}">Default enabled</td>
<td>Default enabled</td>
</tr>
这是Web控制器中的声明(当我添加@GetMapping
和@PostMapping
时开始出现问题,它似乎忽略了@RequestMapping
。
@GetMapping("/admin")
public String greetingForm(Model model) {
model.addAttribute("searchuser", new Searchuser());
return "admin";
}
@PostMapping("/userresults")
public String greetingSubmit(@ModelAttribute Searchuser searchuser) {
return "userresults";
}
@RequestMapping(value = "/userresults")
public ModelAndView listUser(ModelAndView model) throws IOException {
List<User> listUser = userDAO.loadAllUser();
model.addObject("listUser", listUser);
model.setViewName("userresults");
return model;
}
我知道SQL方法正在工作,因为我以前是从另一个页面调用过的。
尝试使用此表结构来显示数据。
<table border="1" style="width: 300px">
<tr>
<th>User name</th>
<th>Default Heading</th>
</tr>
<tr th:each="user : ${listUser}">
<td th:text="${user.username}">Default username</td>
<td>Default enabled</td>
</tr>
</table>
PS:我已经使用上面的表结构测试了您的代码,并且@GetMapping
和@RequestMapping
都可以正常工作。 还要确保listUser
至少有一个User
否则即使默认值也不会显示。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.