在springboot的官方文档中是不建议在项目中使用jsp这样的技术的,取而代之的是freemark、velocity这样的模板引擎。
首先和大家来说一下这个模板引擎的概念,这里特指用于web开发的模板引擎。模板引擎是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档
那么我们的freemark也是有着自己凸显的优点在,才会这么受欢迎
1.freemark不支持写java代码,实现严格的mvc分离
2.性能非常不错
3.对jsp标签支持良好
4.内置大量常用功能,使用非常方便
5.宏定义(类似jsp标签)非常方便
6.使用表达式语言
然后现在来看怎么在springboot中整合freemark模板
1》.在pom.xml文件中引入freemark的依赖包
org.springframework.boot
spring-boot-starter-freemarker
2》在src/main/resource/创建一个templates文件夹,后缀为*.ftl,里面新建一个index.ftl的文件,内容如下
${name}
@Controller
public class IndexController {
@RequestMapping("/index")
public String index(ModelMap map){//ModelMap转发值的作用
map.addAttribute("name","喵喵");
return "index";
}
}
简单的freemark的整合就是这样的,然后我们在来看看freemark里获取list的数据是怎么获取的
先去IndexController造一些list的数据
@Controller
public class IndexController {
@RequestMapping("/index")
public String index(ModelMap map){//ModelMap转发值的作用
map.addAttribute("name","喵喵");
map.put("sex", 1);
List userList = new ArrayList();
userList.add("张三");
userList.add("李四");
userList.add("王五");
map.addAttribute("userList",userList);
return "index";
}
}
<#if sex==1>
男
<#elseif sex==2>
女
<#else>
其他
#if>
<#list userlist as user>
${user}
#list>
如果想要了解freemark更多的内容,可以私信哦