@Controller 中的 Spring @GetMapping 未找到

Adi*_*rta 5 java spring spring-boot

我正在使用Spring框架。我尝试了一些使用 Rest 和 View 的方法。我在路由应用程序时遇到问题。

如果我在我的控制器中使用@RestController,效果很好。但在这种情况下,我想要用户视图,所以我使用@Controller. 但当我使用@Controller它时总是返回“未找到”错误。

这是我的代码:

@RestController
public class LombaController {

    @GetMapping("/get")
    public String get(Model model) {
        model.addAttribute("message", "Hello World");
        return "index";
    }
}
Run Code Online (Sandbox Code Playgroud)

当我请求时该代码有效http://localhost:8080/get。但它返回一个字符串“index”而不是我的视图模板。@Controller我得到了使用而不是@RestController渲染视图的解决方案。但它总是返回“未找到”错误。这是我使用时的代码@Controller

@Controller
public class LombaController {

    @GetMapping("/get")
    public String get(Model model) {
        model.addAttribute("message", "Hello World");
        return "index";
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的 pom.xml

@RestController
public class LombaController {

    @GetMapping("/get")
    public String get(Model model) {
        model.addAttribute("message", "Hello World");
        return "index";
    }
}
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

Pij*_*rek 2

@RestController向您的方法添加@RequestBody注释,这确实会返回一个String“索引”。

如果您想使用模板文件,请将其放入/src/main/resources/templates/index.html并将其更改@RestController@Controller,这样就可以了。