当前位置: 首页 > 知识库问答 >
问题:

为什么在Spring-Boot中必须为Web应用程序提供单独的@Controller类文件?

闻人博
2023-03-14

在Thymeleaf中,要触发index.HTML页面(存在于resources的templates文件夹中),在应用程序的主类中提供一个新的@RequestMapping方法是不起作用的(输出字符串而不是呈现HTML页面),但是创建一个具有相同@RequestMapping方法的单独的@Controller类会触发所需的UI。

Main类中的@RequestMapping方法

package com.personal.boot.spring.helloworld;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class HelloworldApplication {

    public static void main(String[] args) {
        SpringApplication.run(HelloworldApplication.class, args);
    }

    @RequestMapping(value = "/index")
    public String index() {
        return "index";
    }

}
package com.personal.boot.spring.helloworld.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class WebController {
   @RequestMapping(value = "/index")
   public String index() {
      return "index";
   }
}

现在,对/index的get请求呈现templates文件夹中的index.html页面。

为什么会这样呢?请帮帮忙。

共有1个答案

邬宏扬
2023-03-14

这里的答案是@RestController还包括@ResponseBody注释,它强制spring显式转换返回的参数

 类似资料:
  • 我有Spring Boot Web应用程序,最初是为内部Tomcat服务器构建的(有效)。然后我采用了该应用程序在Web Logic服务器上运行。我的应用程序编译并部署到服务器没有问题,但当它不服务MVC页面时。每次调用都会抛出404错误。从下面的错误看,它看起来像Spring调度程序servlet存在,但甚至区域设置都没有正确设置。我无法弄清楚这里有什么问题或缺失,但当我创建RestContro

  • 我已经尝试了几个使用Spring Boot服务JSP页面的教程。它们都返回404页未找到错误。为了克服已知的限制,我使用了一个WAR包装,具有以下依赖关系: 我已经定义了JSP页面在应用程序中的路径。特性: 请求JSP页面时,将显示以下警告: 在Spring Boot 2中已弃用JSP吗?你有任何关于JSP的Spring Boot 2工作示例吗?

  • 问题内容: 如果我没有以编程方式设置任何内容,而只是调用并使用hibernate.properties(如下所示),那么一切都将很好。尝试以编程方式提供用户名,密码和连接URL时,我会收到奇怪的异常提示,提示是hbm文件。我想念什么? 按照@Kshitij的建议。进行混合模式。 *现在 *的hibernate.properties 是 编码 例外 我现在得到这个异常,我的hbm文件中的每个条目都有

  • 问题内容: 我写了一些代码来测试我的Hibernate配置,但是遇到了这样的错误消息: 我的文件结构如下: 这不是一个Web应用程序,它只是一个普通的Java项目。hibernate.cfg.xml如下所示: 主要功能中的代码如下: 根据错误消息,错误发生在 我是Hibernate的新用户,并且已经多次检查了我的配置文件。有谁可以帮助您找出问题所在?谢谢! 编辑:Hibernate版本是4.3.5

  • 我编写了一些代码来测试Hibernate的配置,但是我遇到了这样的错误消息: main函数中的代码如下所示: 根据错误消息,错误发生在 我是Hibernate的一个新用户,我已经检查了我的配置文件很多次了。有人能帮我找出问题所在吗?谢了!

  • 我试图为Freemarker模板提供资源文件夹下面是我的bean配置 我需要将ftl保存在resources文件夹中,并给出配置的目录路径。我不知道如何进一步调试。