springmvc使用freemarker

一、导入freemarker的jar包

freemarker-2.3.15.jar


二、在springmvc.xml文件中配置freemarker的视图解析器

    <!-- freemarker的视图解析 配置freeMarker的模板路径 -->
	<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  
       <property name="templateLoaderPath" value="/WEB-INF/view/" />  
       <property name="defaultEncoding" value="utf-8" />  
       <property name="freemarkerSettings">  
       <props>  
        <prop key="template_update_delay">10</prop>  
        <prop key="locale">zh_CN</prop>  
        <prop key="datetime_format">yyyy-MM-dd</prop>  
        <prop key="date_format">yyyy-MM-dd</prop>  
        <prop key="number_format">#.##</prop>  
       </props>  
      </property>  
     </bean>  
     <!-- FreeMarker视图解析    在这里配置后缀名ftl和视图解析器-->  
     <bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  
	      <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"></property>  
	      <property name="suffix" value=".ftl" />  
	      <property name="contentType" value="text/html;charset=utf-8" />  
	      <property name="exposeRequestAttributes" value="true" />  
	      <property name="exposeSessionAttributes" value="true" />  
	      <property name="exposeSpringMacroHelpers" value="true" />  
     </bean>   


三、编写controller测试freemarker

package com.hbut.ssm.controller;


import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class TestFreemarker {

    @RequestMapping("/freemarker")
    public String index(Model model){
    	model.addAttribute("message","kaxifa");
    	return "free";
    }
}


一点说明:

1.return "free";转发给视图的全路径是"WEB-INF/view/free.ftl";

2.由于freemarker的解析器配置了模板路径以及后缀.ftl,在此无需配置全路径



四、freemarker页面----free.ftl

<Html>
    <head>
        <title>${message}</title>
    </head>
    <body>
        <b>${message}</b>
    <body>
</html>


五、测试解析freemarker



六、freemarker中常见的操作

1.取list的索引   item_index(_index为取得list的索引)

<#list itemsList as item>
  ${item_index},${item.name},${item.price}<br>
</#list>

2.取list的size

 itemsList?size   (说明:?替换.  后面家函数)

3.list的迭代

<#list itemsList as item>
  ${item_index},${item.name},${item.price}<br>
</#list>

4.迭代list里的map

 <#list itemsMap as map>
  ${map["name"]}
 </#list>


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值