1.整合Freemarker
一种模板引擎,前端渲染模板的,类似于EL,jsp,不过比前两个好用
导入很简单 pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
然后添加一下配置文件,上网搜,不贴
前端模板: .ftl 后缀名,渲染语法如下:
${test} 直接输出变量
<#if adress=="21">
<#elseif sex=='"212">
<#else>
</#if>
数组元素的遍历
<#list lists as l>
${l.p}
</#list>
前端代码
test.ftl
测试测试
${name}
<#list listResults as result>
${result}
</#list>
后端代码:
@Controller
public class TemplateController {
@RequestMapping("testTemplate")
public String test(Map<String, Object> map){
map.put("name","测试名字");
List<String> listResults = new ArrayList<String>();
listResults.add("sda");
listResults.add("222da");
listResults.add("s22121da");
map.put("listResults",listResults);
return "test";
}
}
注意两点就行: return "test"; test就是 test.ftl , test.ftl获取返回值时候,从map里面取得,所以后端直接把数据放在map里面。
2.整合Thymeleaf 模板引擎
优点:不需要启动整个项目,单独运行,可以单独启动,基本上替代了jsp,还有很多其他的,纯正的html,脱离了模板,前后端都可以直接运行
语法比较多,简单说几个,用时候官网看吧,就是给前面加上th,代表使用了该模板引擎
${name} th:text="${name}" 输出变量,注意一下所有的变量都放在th:text="${name}"其中即可
@{/test} 相对于根路径 替换href th:href="@{/test}"
@{../test} 相对于当前路径
注意一下两种controller的区别,RestController返回的字符串就是字符串,不能当做html模板解析,Controller可以根据字符串进行模板匹配
简单来讲,后端传入一个Model对象,给里面加入属性,返回到templates目录下的某一个html页面,前端使用规定语法进行渲染。

渲染方式用的时候直接查
转载一篇博客,