spring boot使用thymeleaf模板配置和freem

整体步骤:

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

(2)            如何关闭thymeleaf缓存

(3)            编写模板文件.html

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

1
2
3
4
< dependency >
          < groupId >org.springframework.boot</ groupId >
          < artifactId >spring-boot-starter-thymeleaf</ artifactId >
</ dependency >

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

1
2
3
4
5
6
7
8
9
10
11
########################################################
###THYMELEAF (ThymeleafAutoConfiguration)
########################################################
#spring.thymeleaf.prefix=classpath:/templates/
#spring.thymeleaf.suffix=.html
#spring.thymeleaf.mode=HTML5
#spring.thymeleaf.encoding=UTF- 8
# ;charset=<encoding> is added
#spring.thymeleaf.content-type=text/html
# set to  false  for  hot refresh
spring.thymeleaf.cache= false

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

1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html>
< html  xmlns = "http://www.w3.org/1999/xhtml"  xmlns:th = "http://www.thymeleaf.org"
       xmlns:sec = "http://www.thymeleaf.org/thymeleaf-extras-springsecurity3" >
     < head >
         < title >Hello World!</ title >
     </ head >
     < body >
         < h1  th:inline = "text" >Hello.v.2</ h1 >
         < p  th:text = "${hello}" ></ p >
     </ body >
</ html >

编写访问路径(com.kfit.test.web.TemplateController):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package  com.kfit.test.web;
  
import  java.util.Map;
  
import  org.springframework.stereotype.Controller;
import  org.springframework.web.bind.annotation.RequestMapping;
  
/**
  * 模板测试.
  * @author Administrator
  *
  */
@Controller
publicclass TemplateController {
    
     /**
      * 返回html模板.
      */
     @RequestMapping ( "/helloHtml" )
     public  String helloHtml(Map<String,Object> map){
        map.put( "hello" , "from TemplateController.helloHtml" );
        return "/helloHtml" ;
     }
    
}

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

1
2
Hello.v.2
from TemplateController.helloHtml

使用freemarker

使用freemarker也很简单,

在pom.xml加入freemarker的依赖:

1
2
3
4
< dependency >
             < groupId >org.springframework.boot</ groupId >
             < artifactId >spring-boot-starter-freemarker</ artifactId >
</ dependency >

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
########################################################
###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.kfit.test.web.TemplateController:

1
2
3
4
5
6
7
8
/**
      * 返回html模板.
      */
     @RequestMapping ( "/helloFtl" )
     public  String helloFtl(Map<String,Object> map){
        map.put( "hello" , "from TemplateController.helloFtl" );
        return "/helloFtl" ;
     }

src/main/resouces/templates/helloFtl.ftl

1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html>
< html  xmlns = "http://www.w3.org/1999/xhtml"  xmlns:th = "http://www.thymeleaf.org"
       xmlns:sec = "http://www.thymeleaf.org/thymeleaf-extras-springsecurity3" >
     < head >
         < title >Hello World!</ title >
     </ head >
     < body >
         < h1 >Hello.v.2</ h1 >
         < p >${hello}</ p >
     </ body >
</ html >

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

1
2
Hello.v.2
from TemplateController.helloFtl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值