繁体   English   中英

Java Spring Boot静态文件

[英]Java Spring Boot Static Files

我今天开始Java春季,我对此有疑问。 当网址触发我的控制器时,我想打开.html页面。 我以前做过Python Django和c#ASP.NET,但是现在我不明白为什么它不起作用。

Spring Boot版本:1.5.3.RELEASE

家庭控制器

package berkin.kodgemisi.springbootstarter.home;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;

@EnableWebMvc
@Controller

public class HomepageController {

    @RequestMapping(path="/")
    public String index(){
        return "html/index.html";
    }
}

它是如此简单。 如果url为“ /”,则重定向到index.html,但我感到困惑。 它是我的HTML页面。

的HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello World</title>
</head>
<body>
<p> Hello World </p>
</body>
</html>

此页面不再简单

我的依赖项有问题吗? 我应该写吗?

我也找到了关于stackoverflow的解决方案。 一个人说

mvc:resources mapping =“ / static / **” location =“ / static /”

我猜应该有类似“ web.xml”的东西,但我没有

我必须在上面写类似的东西吗? 档案顺序

错误

错误

安慰

https://pastebin.com/EJpSVdQV

聚甲醛

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>berkin.kodgemisi.hr</groupId>
    <artifactId>kodgemisi.hr</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>HR App</name>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.3.RELEASE</version>
    </parent>


    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>

            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.4.190</version><!--$NO-MVN-MAN-VER$ -->
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

如果您确实return "redirect:/index" ,则表示它的含义:重定向到/index ,这意味着您还需要一种支持/index端点的方法(并且您没有显示自己的方法)。

如果只想从模板返回页面,则只需return "index";

如果您的资源处理程序设置正确,它将查找适当的文件并返回。

在春季启动时不要使用@EnableWebMvc,如果将spring-web作为maven依赖项包含在内,它将自动配置。

您正在使用哪个模板引擎? 如果不使用模板引擎,则可以使用例如百里香叶。 只需将其添加到您的pom中:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM