Freemarker(三)與springMVC整

     前兩篇博客介紹了freemaker是什麼以及簡單的語法規則,下面我們通過實現一個demo來看在實際應用中如何使用freemaker,本篇博客主要介紹freemakerspring的整合。

      需要的Jar包:freemarker-2.3.15.jar

     在已搭建好的spring的配置文件的基礎上添加以下代碼:

配置文件:

<!-- 一定要放在viewResolver的前面,這樣就先去找freemarker的 -->
 
<beanid="freemarkerConfig"
 
    class="org.springframework.web.servlet
 
         .view.freemarker.FreeMarkerConfigurer">
 
    <propertyname="templateLoaderPath" value="/WEB-INF/ftl/"/>
 
</bean>
 
<beanid="viewResolver"
 
    class="org.springframework.web.servlet
 
         .view.freemarker.FreeMarkerViewResolver">
 
    <property name="cache"value="true"/>
 
    <property name="prefix"value=""/>
 
    <property name="suffix"value=".ftl"/>
 
    <property name="contentType"value="text/html; charset=UTF-8"/>
 
</bean>
 
<bean
 
    class="org.springframework.web.servlet
 
         .view.InternalResourceViewResolver">
 
    <property name="viewClass"
 
         value="org.springframework.web.servlet.view.JstlView"/>
 
    <property name="prefix"value="/WEB-INF/jsp/" />
 
    <property name="suffix"value=".jsp" />
 
</bean>


 

 

java文件:

package org.fre.controller;
importorg.springframework.stereotype.Controller;
importorg.springframework.ui.Model;
importorg.springframework.web.bind.annotation.RequestMapping;
 
@Controller
 
public classHelloController {
 
    @RequestMapping("/hello")
 
    public String hello(Model model) {
 
       model.addAttribute("username", "張三");
 
        return "hello";
 
    }
 
    @RequestMapping("/world")
 
    public String helloworld(Model model) {
 
       model.addAttribute("username","李四");
 
        return "world";
 
    }
 
}


 

ftl文件:

<html>
<head>
<metahttp-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Inserttitle here</title>
</head>
<body>
    <h1>${username}</h1>
</body>
</html>

 

jsp文件:

<%@ pagelanguage="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE htmlPUBLIC "-//W3C//DTD HTML 4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <metahttp-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Insert titlehere</title>
    </head>
    <body>
        ${username }
    </body>
</html>

 

         訪問時一個顯示張三,一個顯示李四。至此,整合成功了。通過對比ftl文件和jsp文件,發現大同小異,ftl文件編寫與jsp文件編寫區別不大,所以比較容易上手使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章