【问题标题】:Spring Boot HTML page not renderingSpring Boot HTML页面未呈现
【发布时间】:2020-01-09 17:46:16
【问题描述】:

我正在学习 Spring Boot,但在尝试将模型数据发布到 HTML 文件时遇到问题。

我有一个控制器,用于填充模型并从中调用 HTML 页面。当我在此方法中放置断点时,模型数据会正确填充,但 HTML 页面仅使用 HTML 文件的名称呈现,没有其他内容(也没有浏览器错误)。我认为它可能与文件结构有关,并且我的 RestController 已经指定了路径(因为当我创建一个干净的新控制器时,没有指定基于类的显式 @RequestMapping 并从根调用模板HTML 文件的路径 + 名称,它会正确呈现)。我确实安装了 ThymeLeaf 依赖项,并且“userView.html”放置在“模板”目录中。

ReaderController.java 提取:

@RequestMapping("/reader")
public class ReaderController {

...

    @RequestMapping(value = "/userView")
    public String getUser(Model model) {
        // business logic goes here
        model.addAttribute("userName","Somebody");
        model.addAttribute("url", "www.example.com");
        return "userView";
    }

userView.html 提取:

<body>
<h1>User Data</h1>
  <p th:text="'Username: ' + ${userName}"/>
  <p th:text="'Url: ' + ${url}"/>
</body>

http://localhost:8080/reader/userView 只呈现单词“userView”。

【问题讨论】:

    标签: spring-boot


    【解决方案1】:

    我找到了问题的解决方案。我无意中对控制器类使用了@RestController 注释而不是@Controller 注释。这个link 有助于解释这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-08
      • 1970-01-01
      • 2021-08-14
      • 2015-03-18
      • 2017-10-16
      相关资源
      最近更新 更多