spring boot使用freemarker生成静态html—基于springmvc+tomcat切到springboot实战三

2019-03-01 00:14|来源: 网路

以运行jar的方式启动spring boot,如果要使用freemarker生成静态html(例如书生的首页),怎么访问呢?

首先,生成静态页面的路径获取方式:

@Override
public String getContextPath() {
    String contextPath = ClassUtils.getDefaultClassLoader().getResource("").getPath();
    return contextPath;
}
 
@Override
public String getPageBasePath() {
    return getContextPath() + File.separator + "templates";
}


其次,application.yml配置template-loader-path

template-loader-path:

 - file:./templates/

 - classpath:/templates/


最后,打包的时候把application.yml打包到启动jar所在目录

<plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.4.1</version>
    <executions>
        <execution>
            <id>copy-cms-config</id>
            <phase>process-resources</phase>
            <goals>
                <goal>copy-resources</goal>
            </goals>
            <configuration>
                <outputDirectory>${project.build.directory}</outputDirectory>
                <resources>
                    <resource>
                        <directory>src/main/resources</directory>
                        <includes>
                            <include>application.yml</include>
                        </includes>
                        <filtering>true</filtering>
                    </resource>
                </resources>
            </configuration>
        </execution>
    </executions>
</plugin>


相关问答

更多

Spring怎么使用?

Spring包含7大模块,每个模块可以单独使用、也可以结合起来使用;但是在实际开发过程中,一般需要结合Struts、Hibernate来使用。如果楼主要问具体的使用方式的话,最好还是买一本教材、或者电子书来看,因为比较复杂,三言两语讲不清楚的。

Spring怎么使用?

Spring包含7大模块,每个模块可以单独使用、也可以结合起来使用;但是在实际开发过程中,一般需要结合Struts、Hibernate来使用。如果楼主要问具体的使用方式的话,最好还是买一本 教材、或者电子书来看,因为比较复杂,三言两语讲不清楚的。

Spring怎么使用?

Spring包含7大模块,每个模块可以单独使用、也可以结合起来使用;但是在实际开发过程中,一般需要结合Struts、Hibernate来使用。如果楼主要问具体的使用方式的话,最好还是买一本 教材、或者电子书来看,因为比较复杂,三言两语讲不清楚的。