SpringBoot与FreeMarker集成(十一)

Freemarker和SpringBoot

(注意,为什么不用JSP,因为Springboot对JSP的支持不好!!)

1,SpringMVC和JSP的集成原理   VS    SpringMVC 和Freemarker的集成原理;

2,Springboot和Freemarker集成:

     1)引入spring-boot-starter-freemarker;

        <!-- freemarker依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>

     2)Springboot对freemarker的配置:(也可以不配置,全使用默认)

  1,spring.freemarker.enabled=true:是否开启freemarker支持;

  2,spring.freemarker.allow-request-override:是否允许request中的属性覆盖model中同名属性;默认false;

  3,spring.freemarker.allow-session-override:是否允许session中的属性覆盖model中同名属性;默认false;

  4,spring.freemarker.cache:是否支持模板缓存;默认false;

  5,spring.freemarker.charset=UTF-8:模板编码

  6,spring.freemarker.content-type=text/html:模板contenttype;

  7,spring.freemarker.expose-request-attributes:是否开启request属性expose,默认false;

  8,spring.freemarker.expose-session-attributes:是否开启session属性expose,默认false;

  9,spring.freemarker.expose-spring-macro-helpers:是否开启spring的freemarker宏支持;默认为false;

  10,spring.freemarker.prefer-file-system-access:默认为true,支持实时检查模板修改;

  11,spring.freemarker.prefix:加载模板时候的前缀;

  12,spring.freemarker.settings.*:直接配置freemarker参数

  13,spring.freemarker.suffix:模板文件后缀;

  14,spring.freemarker.template-loader-path=classpath:/templates/:模板加载地址

 

     3)动态资源路径:

   4)测试Controller类

@Controller
public class FreekMarkerController {

    //@ResponseBody
    @RequestMapping("/hello")
    public String hello(Model model) {
        model.addAttribute("name","java");
        return "hell";
    }
}

    5)  测试页面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
 hello ${name}
</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_37431224/article/details/103897685