Spring Boot之使用模板thymeleaf和freemarker

使用thymeleaf步骤:

(1) 在pom.xml中引入thymeleaf;

(2) 如何关闭thymeleaf缓存

(3)编写模板文件.html

Spring Boot默认就是使用thymeleaf模板引擎的,所以只需要在pom.xml加入依赖即可:



         org.springframework.boot

         spring-boot-starter-thymeleaf

Thymeleaf缓存在开发过程中,肯定是不行的,那么就要在开发的时候把缓存关闭,只需要在application.properties进行配置即可:

########################################################

###THYMELEAF (ThymeleafAutoConfiguration)

########################################################

#spring.thymeleaf.prefix=classpath:/templates/

#spring.thymeleaf.suffix=.html

#spring.thymeleaf.mode=HTML5

#spring.thymeleaf.encoding=UTF-8

# ;charset= is added

#spring.thymeleaf.content-type=text/html

# set to false for hot refresh

spring.thymeleaf.cache=false

编写模板文件src/main/resouces/templates/helloHtml.html

注意,spring boot 默认模板文件放置在 src/main/resouces下的templates中,自动扫描,如放在其他地方需要进行其他配置,在此略过



    
        Hello World!
    
    
        

Hello.v.2

编写访问路径  com.mxh.web.controller.TemplateController

package com.mxh.web.controller;

import java.util.Map;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
 * 模板测试.
 * @author Administrator
 */
@Controller
public class TemplateController {
	/**
     * 返回html模板.
     */
	@RequestMapping("/helloHtml")
	public String helloHtml(Map map){
		map.put("hello", "a html test");
        return "/helloHtml";
    }
}

启动应用,输入地址:http://127.0.0.1:8080/helloHtml 会输出:

Spring Boot之使用模板thymeleaf和freemarker_第1张图片

使用freemarker步骤一样,就不赘述了。

 在pom.xml加入freemarker的依赖:


            org.springframework.boot
            spring-boot-starter-freemarker

剩下的编码部分都是一样的,说下application.properties文件:

########################################################
###FREEMARKER (FreeMarkerAutoConfiguration)
########################################################
spring.freemarker.allow-request-override=false
spring.freemarker.cache=true
spring.freemarker.check-template-location=true
spring.freemarker.charset=UTF-8
spring.freemarker.content-type=text/html
spring.freemarker.expose-request-attributes=false
spring.freemarker.expose-session-attributes=false
spring.freemarker.expose-spring-macro-helpers=false
#spring.freemarker.prefix=
#spring.freemarker.request-context-attribute=
#spring.freemarker.settings.*=
#spring.freemarker.suffix=.ftl
#spring.freemarker.template-loader-path=classpath:/templates/#comma-separatedlist
#spring.freemarker.view-names= #whitelistofviewnamesthatcanberesolved

 

 com.mxh.web.controller.TemplateController中

/**
	 * 返回ftl模板.
	 */
	@RequestMapping("/helloFtl")
	public String helloFtl(Map map){
		map.put("hello", "a ftl test");
		return "/helloFtl";
	}

src/main/resouces/templates/helloFtl.ftl



    
        Hello World!
    
    
        

Hello.v.2

${hello}

访问地址:http://127.0.0.1:8080/helloFtl

可以看到

Spring Boot之使用模板thymeleaf和freemarker_第2张图片

 

从这里也可以看出,thymeleaf和freemarker是可以共存的。

你可能感兴趣的:(Spring,Boot)