jsp本质是servlet,渲染都在服务器,freemarker模板引擎也是在服务器端渲染。
项目结构
引入依赖pom.xml
org.springframework.boot spring-boot-starter-freemarker
配置application.properties
############################################################## freemarker 静态资源配置##############################################################设定ftl文件路径spring.freemarker.template-loader-path=classpath:/templates# 关闭缓存, 即时刷新, 上线生产环境需要改为truespring.freemarker.cache=falsespring.freemarker.charset=UTF-8spring.freemarker.check-template-location=truespring.freemarker.content-type=text/htmlspring.freemarker.expose-request-attributes=truespring.freemarker.expose-session-attributes=truespring.freemarker.request-context-attribute=requestspring.freemarker.suffix=.ftl
模板页index.html
FreeMarker模板引擎 ${resource.name}
${resource.website}
${resource.language}
控制器Controller
@Controller@RequestMapping("demo/ftl")public class FreemarkerController { @RequestMapping("/index") public String index(ModelMap map) { Mapresource = new HashMap<>(); resource.put("name", "yysue"); resource.put("website", "https://yysue.com"); resource.put("language", "java"); map.addAttribute("resource", resource); return "freemarker/index"; } @RequestMapping("center") public String center() { return "freemarker/center/center"; }}