You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SpringBoot+Thymeleaf项目MySQL数据无法在HTML模板展示问题咨询

问题排查及修复方案

1. 核心模板语法错误(直接导致渲染失败)

你在Thymeleaf循环中定义的迭代变量是adminuser,但第一列ID的取值写的是${user.id},变量user不存在,会触发模板渲染异常,导致整个表格数据无法加载。
修复方案:将第一列的取值修改为正确的迭代变量:

<td th:text="${adminuser.id}"></td>

2. 字段与列不匹配+二进制字段处理错误

userImage是存储图片的byte[]二进制类型,直接用th:text输出只会显示字节数组的内存地址,同时你错误地将头像字段放到了Personnel(人员名称)列:

  • 如果Personnel列需要显示人员名称,直接替换该列取值为${adminuser.name}即可
  • 如果需要展示用户头像,需要先将字节数组转Base64编码后用img标签加载:
<!-- 头像展示示例 -->
<td>
  <img th:src="'data:image/png;base64,' + ${T(java.util.Base64).getEncoder().encodeToString(adminuser.userImage)}" alt="用户头像" width="50"/>
</td>

3. 后端数据校验(可选排查步骤)

如果修复上述问题后依然无数据,先确认后端是否正确拿到数据库数据:

  • 在Controller的goToEntriesPage方法中打印returnEntries的长度,确认数据库中确实存在有效记录
  • 确认AdminUserRepository接口正确继承了JpaRepository<AdminUser, Integer>,没有自定义查询逻辑错误

4. 列顺序对齐优化

当前表头和表体的列顺序不匹配:表头顺序为ID→Personnel→Request ID→Device Type→Request Date→Issue Details→Status→Actions,而你写的表体顺序和字段不对应,调整字段顺序即可正常对齐展示。

内容的提问来源于stack exchange,提问作者J Maine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 21:06:04