如何配置Spring / Springboot访问主页?

时间:2019-03-08 13:31:12

标签: java spring spring-boot spring-mvc thymeleaf

我正在尝试使用Springboot(JPA,H2)和Thymeleaf构建我的第一个Web应用程序。

我的目标是通过控制器(entities/)获取/修改/删除存储在数据库(controllers/)中的数据。

但是,本地路由无效。

您能告诉我并解释我做错了什么吗?我忘了配置一些东西吗?

感谢帮助!

错误

URL:localhost:8082/

Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Fri Mar 08 14:22:21 CET 2019
There was an unexpected error (type=Not Found, status=404).
No message available

IndexController

@RestController
@RequestMapping("/")
public class IndexController {

    @GetMapping(value = "/")
    public ModelAndView getHome(){
        ModelAndView mv = new ModelAndView();
        mv.setViewName("index");
        return mv;
    }
}

index.html

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Home</title>
    <link rel="stylesheet" href="../static/css/bootstrap.min.css">
</head>
<body>
    <p>Test</p>
</body>
</html>

文件夹

projetname/
|__src/
   |__main/
      |__java/
          |__projectname/
          |    |__controllers/
          |    |  |__IndexController.java
          |    |__entities/
          |    |__repositories/
          |    |__App.java
          |__resources/
              |__static/
              |   |__css/
              |   |__js/    
              |__templates/
              |   |__index.html 
              |__data.sql
              |__application.properties 

2 个答案:

答案 0 :(得分:1)

确保将spring-boot-starter-thymeleaf作为项目的依赖项包括在内。

this guide may help

答案 1 :(得分:0)

应用程序启动时,查看其日志并找到类似的映射

2019-03-08 17:52:24.864  INFO 9592 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/greeting]}" onto public hello.Greeting hello.GreetingController.greeting(java.lang.String)

这意味着您可以使用/ greeting调用URL,并将其映射到相应的控制器

404错误表示您呼叫的网址未映射