java SpringMVC整合Freemarker的详细配置步骤

转自:http://www.jb51.net/article/43200.htm

前言:FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。
簡而言之,Freemarker就是在Jave Web開發中以模板的方式在頁面展示從服務端獲取的信息。

Java: FreeMarker的配置和使用

初学什么都不可以忽略的地方就是这个东西的官方网站:http://freemarker.org/。下载或者API都可以参考这里。

FreeMarker是什么

非常的简单明了。FreeMarker是一个java包。实现了MVC模式,分离开发者和设计师。也就是分离html也java的代码。

 

FreeMarker是如何工作的

java SpringMVC整合Freemarker的详细配置步骤_第1张图片

这是官网的图。非常明确的说明了FreeMarker是如何运作的。首先需要有一个template模板,在那里就是一堆的html标签和一些专属FreeMarker的标签,这些标签之后会被具体的数据代替。这些数据就是有左下的Java objects提供。就是工程中的Jar包。他把这些模板和Java objects的数据加工组合之后输出html页面。所以,FreeMarker的功能,就如官网中一直强调的,不是别的而是一个模板引擎。



step1.引入jar包

Maven代碼

复制代码代码如下:



    org.freemarker
    freemarker
    2.3.20



    org.springframework
    spring-context-support
    3.2.4.RELEASE

step2.在src/main/resources/conf目錄下新建Freemarker屬性文件freemarker.properties,此屬性文件定義了Freemarker常用的編碼轉換,代碼如下:

tag_syntax=auto_detect
template_update_delay=2
default_encoding=UTF-8
output_encoding=UTF-8
locale=zh_CN
date_format=yyyy-MM-dd
time_format=HH:mm:ss
datetime_format=yyyy-MM-dd HH:mm:ss
 



step3.在DispatcherServlet 上下文配置文件spring-servlet.xml中添加Freemarker所需的配置,代碼如下:
复制代码代码如下:



   



   
   
   
       
           
       

   





   
   
   
       
            *.ftl
       

   

   
   
   
   
   
   
   



step4.編寫controller文件和ftl文件
 在src/main/java目錄下新建包www.asuan.com.controller,在包下新建HelloWorldController.java,代碼如下:
复制代码代码如下:

package www.asuan.com.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloWorldController {
    @RequestMapping("/helloWorld")
    public String helloWorld(Model model) {
       String word0 = "Hello ";
       String word1 = "World!";
       //將數據添加到視圖數據容器中
       model.addAttribute("word0",word0);
       model.addAttribute("word1",word1);
        return "helloWorld.ftl";
    }
}

在step3中配置的WEB-INF/ftl路徑下新建helloWorld.ftl,代碼如下:
复制代码代码如下:





Insert title here


${word0}${word1}






step5.運行與調試
將工程部署到tomcat并運行,在瀏覽器中訪問: http://localhost:8080/ 你設置的工程名/helloWorld.htm
運行結果:

你可能感兴趣的:(SpringMVC,FreeMarker)