Springboot整合freemarker和相应的语法详解

编辑: admin 分类: java 发布时间: 2021-12-03 来源:互联网

FreeMarker 是⼀款 模板引擎: 即⼀种基于模板和要改变的数据, 并⽤来⽣成输出⽂本(HTML⽹⻚,⼦邮件,配置⽂件,源代码等)的通⽤⼯具。 是⼀个Java类库。

FreeMarker 被设计⽤来⽣成 HTML Web ⻚⾯,特别是基于 MVC 模式的应⽤程序,将视图从业务逻辑抽离处理,业务中不再包括视图的展示,⽽是将视图交给 FreeMarker 来输出。虽然 FreeMarker 具有些编程的能⼒,但通常由 Java 程序准备要显示的数据,由 FreeMarker ⽣成⻚⾯,通过模板显示准备数据。

FreeMarker是一款Spring官方推荐使用的模板引擎。以'.flt'结尾的文件。

在这里插入图片描述

FreeMarker环境搭建(SpringBoot集成FreeMarker)

1.新建SpringBoot Web项⽬

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

2.配置坐标依赖和部署插件

在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.xxxx</groupId>
    <artifactId>054-springboot-freemarker</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>054-springboot-freemarker</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <spring-boot.version>2.3.7.RELEASE</spring-boot.version>
    </properties>

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

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- freemarker的坐标依赖 -->
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.23</version>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.3.7.RELEASE</version>
                <configuration>
                    <mainClass>com.xxxx.Application</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <id>repackage</id>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

</project>

3.修改配置⽂件 application.yml

## freemarker
freemarker:
    #处理所有以.ftl结尾的文件;ftl是freemarker默认的文件后缀
    suffix: .ftl
    content-type: text/html
    #设置模板的默认编码:UTF-8
    charset: UTF-8
    #默认从设置的目录下开始查找对应的模板文件
    template-loader-path: classpath:/views/

4.编写Controller类

到此这篇关于Springboot整合freemarker和相应的语法的文章就介绍到这了,更多相关Springboot整合freemarker内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

【文章出处:http://www.yidunidc.com/hkzq.html欢迎转载】