• spring mvc 集成freemarker模板


    主要使用到的jar 文件:spring mvc +freemarker.jar

    第一步:spring mvc 集成 freemarker 

    [html] view plain copy
     在CODE上查看代码片派生到我的代码片
    1. <!-- 定义跳转的文件的前后缀 ,视图模式配置-->  
    2. <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
    3.     <!-- 这里的配置我的理解是自动给后面action的方法return的字符串加上前缀和后缀,变成一个 可用的url地址 -->  
    4.     <property name="prefix" value="/backstage/jsp/" />  
    5.     <property name="suffix" value=".jsp" />  
    6.     <property name="viewClass" value="org.springframework.web.servlet.view.InternalResourceView"/>  
    7.      <property name="order" value="1"/>  
    8. </bean>  
    9.   
    10.   <!-- 配置freeMarker视图解析器 -->  
    11.    <bean id="viewResolverFtl" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  
    12.        <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>  
    13.        <property name="contentType" value="text/html; charset=UTF-8"/>  
    14.        <property name="exposeRequestAttributes" value="true" />  
    15.        <property name="exposeSessionAttributes" value="true" />  
    16.        <property name="exposeSpringMacroHelpers" value="true" />  
    17.        <property name="cache" value="true" />  
    18.        <property name="suffix" value=".ftl" />  
    19.        <property name="order" value="0"/>  
    20.    </bean>  
    21.      
    22.      <!-- 配置freeMarker的模板路径 -->  
    23.    <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  
    24.        <property name="templateLoaderPath" value="/backstage/jsp/"/>  
    25.        <property name="freemarkerVariables">  
    26.            <map>  
    27.                <entry key="xml_escape" value-ref="fmXmlEscape" />  
    28.            </map>  
    29.        </property>  
    30.        <property name="defaultEncoding" value="UTF-8"/>  
    31.        <property name="freemarkerSettings">  
    32.            <props>  
    33.                <prop key="template_update_delay">3600</prop>  
    34.                <prop key="locale">zh_CN</prop>  
    35.                <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>  
    36.                <prop key="date_format">yyyy-MM-dd</prop>  
    37.                <prop key="number_format">#.##</prop>  
    38.            </props>  
    39.        </property>  
    40.    </bean>  
    41.   
    42.    <bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>  

    【重点:在JSP和Freemarker的配置项中都有一个order property,上面例子是把freemarker的order设置为0,jsp为1。意思是找view时,先找ftl文件,再找jsp文件做为视图。】

    第二步:controller代码

    [html] view plain copy
     在CODE上查看代码片派生到我的代码片
    1. package com.wlsq.controller;  
    2.   
    3. import org.springframework.stereotype.Controller;  
    4. import org.springframework.web.bind.annotation.RequestMapping;  
    5. import org.springframework.web.bind.annotation.RequestMethod;  
    6. import org.springframework.web.servlet.ModelAndView;  
    7.   
    8. @Controller  
    9. @RequestMapping(value="/ftl")  
    10. public class FreemarkerTest {  
    11.      @RequestMapping(value="/index",method=RequestMethod.GET)  
    12.         public ModelAndView index() {  
    13.             ModelAndView view = new ModelAndView("TestFreemarker/index");  
    14.             view.addObject("message", "Say hi for Freemarker.");  
    15.             return view;  
    16.         }  
    17.   
    18. }  


    第三步:TestFreemarker/index.ftl

    [html] view plain copy
     在CODE上查看代码片派生到我的代码片
      1. <Html>  
      2.     <head>  
      3.         <title>${message}</title>  
      4.     </head>  
      5.     <body>  
      6.         <b>${message}</b>  
      7.     <body>  
      8. </html>  
  • 相关阅读:
    atcoder #082 E 暴力 计算几何
    LightOJ 1364 树形DP
    gym100712 ACM Amman Collegiate Programming Contest
    CF757 C hash
    CF844 C 置换 水
    CF544 C 背包 DP
    CF540 D 概率 DP
    CF540 C BFS 水
    CF540 B 贪心
    CF745 C 并查集
  • 原文地址:https://www.cnblogs.com/wanghuaijun/p/6232853.html
Copyright © 2020-2023  润新知