Spring Boot 使用模板引擎
Spring Boot 推荐使用Thymeleaf、FreeMarker、Velocity、Groovy、Mustache等模板引擎。不建议使用JSP。
1 2 3 4 5 | <!-- thymeleaf 模板引擎--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | /** * @author sam * @since 2017/7/16 */ @Controller public class HomeController { @RequestMapping ( "/home" ) public String home(ModelMap modelMap) { modelMap.put( "name" , "Magical Sam" ); List<String> list = new ArrayList<>(); list.add( "sam a" ); list.add( "sam b" ); list.add( "sam c" ); list.add( "sam d" ); modelMap.put( "list" , list); return "home" ; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 | <!DOCTYPE html> <html xmlns= "http://www.w3.org/1999/xhtml" xmlns:th= "http://www.thymeleaf.org" > <head> <meta charset= "UTF-8" /> <title>Home</title> </head> <body> <span th:text= "${name}" ></span> <ul> <li th:each= "item : ${list}" th:text= "${item}" ></li> </ul> </body> </html> |
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 | # ================================================ # Thymeleaf配置 # ================================================ # 是否启用thymeleaf模板解析 spring.thymeleaf.enabled= true # 是否开启模板缓存(建议:开发环境下设置为 false ,生产环境设置为 true ) spring.thymeleaf.cache= false # Check that the templates location exists. spring.thymeleaf.check-template-location= true # 模板的媒体类型设置,默认为text/html spring.thymeleaf.content-type=text/html # 模板的编码设置,默认UTF- 8 spring.thymeleaf.encoding=UTF- 8 # 设置可以被解析的视图,以逗号,分隔 #spring.thymeleaf.view-names= # 排除不需要被解析视图,以逗号,分隔 #spring.thymeleaf.excluded-view-names= # 模板模式设置,默认为HTML5 #spring.thymeleaf.mode=HTML5 # 前缀设置,SpringBoot默认模板放置在classpath:/template/目录下 spring.thymeleaf.prefix=classpath:/templates/ # 后缀设置,默认为.html spring.thymeleaf.suffix=.html # 模板在模板链中被解析的顺序 #spring.thymeleaf.template-resolver-order= |
1 2 3 4 5 | <!-- freemarker 模板引擎 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency> |
1 | 同上。 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <!DOCTYPE html> <html lang= "en" > <head> <meta charset= "UTF-8" > <title>Title</title> </head> <body> <span>${name}</span> <ul> <#list list as item > <li>${item}</li> </#list> </ul> </body> </html> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # ================================================ # FreeMarker配置 # ================================================ # 是否开启模板缓存 spring.freemarker.cache= true # 编码格式 spring.freemarker.charset=UTF- 8 # 模板的媒体类型设置 spring.freemarker.content-type=text/html # 前缀设置 默认为 "" spring.freemarker.prefix= # 后缀设置 默认为 .ftl spring.freemarker.suffix=.ftl #spring.freemarker.allow-request-override= false #spring.freemarker.check-template-location= true #spring.freemarker.expose-request-attributes= false #spring.freemarker.expose-session-attributes= false #spring.freemarker.expose-spring-macro-helpers= false #spring.freemarker.request-context-attribute= #spring.freemarker.template-loader-path=classpath:/templates/ #spring.freemarker.view-names= |
以上就是关于Spring Boot系列web开发之Thymeleaf以及FreeMarker模板引擎详解的详细内容,更多请关注php中文网其它相关文章!
springboot下面thymeleaf和freemarker两种共存,并且设置thymeleaf的优先级高于freemarker
请您注意
·自觉遵守:爱国、守法、自律、真实、文明的原则
·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规
·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·您在NoteShare上发表的作品,NoteShare有权在网站内保留、转载、引用或者删除
·参与本评论即表明您已经阅读并接受上述条款