ftl (freemarker) 与 jsp (jstl) 的对应功能的不同写法及举例(部分)

1 篇文章 0 订阅
1 篇文章 0 订阅

ftl(freemark) 与 jsp(jstl) 的对应功能的不同写法及举例(部分)

  • 注意: 对比是在相同情况和要求下实现相同的功能
  1. 页面的文件名: . jsp文件 和 . ftl 文件

  2. 配置文件(pom.xml):

    1. freemark需要的依赖
    	<dependency>
          <groupId>org.freemarker</groupId>
          <artifactId>freemarker</artifactId>
          <version>2.3.23</version>
        </dependency>
    
    1. jstl 需要的依赖
        <dependency>
          <groupId>jstl</groupId>
          <artifactId>jstl</artifactId>
          <version>1.2</version>
        </dependency>
    
  3. 页面 :

    1. jsp页面需要引入外部标签库 jstl
      <%@taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>

    2. jsp页面要在<%@ page contentType=“text/html;charset=UTF-8” language=“java” %>中加入 属性 isELIgnored=“false” 让页面识别EL语句

  4. include标签:

    1) jsp:

    <%@include file= " /WEB-INF/views/common/menu.jsp " %>
    

    2) ftl:

    <#include " ../common/menu.jsp ">
    
  5. set 和 assign 指令 :

    • 在当前模版中创建一个新的变量, 或者替换一个已经存在的变量
    1. jsp:
    <c:set var="currentMenu" value="employee"/>
    
    1. flt:
    <#assign currentMenu="employee"/>
    
  6. 循环遍历语句 :

    1. jstl中的 < c:forEach >< /c:forEach >
    <c:forEach items="${result.data}" var="employee" varStatus="vs">
    	<td>${vs.count}</td><!--序号每循环一次+1-->
        <td>${employee.name}</td>
        <td>${employee.age}</td>
    </c:forEach>
    
    1. freemark中的 <#list></#list>
      <#list result.list  as employee>
      	  <td>${employee_index+1}</td><!--序号每循环一次+1-->
          <td>${employee.name!}</td><!--相比于jsp页面要在结束大括号之前加一个感叹号 ! -->
          <td>${employee.age!}</td>
      </#list>
    
如有错误请各位大神指导, 叩谢了

在这里插入图片描述

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值