溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

springMvc集成Velocity

發(fā)布時間:2020-07-23 19:40:12 來源:網絡 閱讀:885 作者:tl20011 欄目:開發(fā)技術

一、什么是Velocity

    Velocity 是一個基于 Java 的模板引擎框架,提供的模板語言可以使用在 Java 中定義的對象和變量上。Velocity 是 Apache 基金會的項目,開發(fā)的目標是分離 MVC 模式中的持久化層和業(yè)務層。但是在實際應用過程中,Velocity 不僅僅被用在了 MVC 的架構中,還可以被用在以下一些場景中。

  1Web 應用:開發(fā)者在不使用 JSP 的情況下,可以用 Velocity 讓 HTML 具有動態(tài)內容的特性。

    2. 源代碼生成:Velocity 可以被用來生成 Java 代碼、SQL 或者 PostScript。有很多開源和商業(yè)開發(fā)的軟件是使用 Velocity 來開發(fā)的。

    3. 自動 Email:很多軟件的用戶注冊、密碼提醒或者報表都是使用 Velocity 來自動生成的。使用 Velocity 可以在文本文件里面生成郵件內容,而不是在 Java 代碼中拼接字符串。

    4. 轉換 xml:Velocity 提供一個叫 Anakia 的 ant 任務,可以讀取 XML 文件并讓它能夠被 Velocity 模板讀取。一個比較普遍的應用是將 xdoc 文檔轉換成帶樣式的 HTML 文件。

詳情參考:http://velocity.apache.org/engine/devel/overview.html


二、如何集成

    怎么用VM請移植官網去學習,這里僅介紹如何集成:

1、springMVC.xml配置文件中加入VelocityLayoutViewResolver視圖解析器:

<!-- velocity  ViewResolver -->
<bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
   <property name="resourceLoaderPath" value="/WEB-INF/velocity/"/>
   <property name="configLocation" value="/WEB-INF/velocity.properties"/>
</bean>

<bean id="viewResolver" class="org.springframework.web.servlet.view.velocity.VelocityLayoutViewResolver">
   <property name="cache" value="true"/>
   <property name="prefix" value=""/>
   <property name="suffix" value=".vm"/>
   <property name="toolboxConfigLocation" value="/WEB-INF/velocityTools.xml" /><!--toolbox配置文件路徑-->
   <property name="dateToolAttribute" value="date" /><!--日期函數名稱-->
   <property name="numberToolAttribute" value="number" /><!--數字函數名稱-->
   <property name="contentType" value="text/html;charset=UTF-8" />
   <property name="exposeSpringMacroHelpers" value="true" /><!--是否使用spring對宏定義的支持-->
   <property name="exposeRequestAttributes" value="true" /><!--是否開放request屬性-->
   <property name="requestContextAttribute" value="req"/><!--request屬性引用名稱-->
   <property name="allowSessionOverride" value="true"/>
   <property name="allowRequestOverride" value="true"/>
   <property name="layoutUrl" value="layout.vm"/>
</bean>

2、所有視圖文件均以.vm為結尾。

3、layout.vm為視圖模板,即包含頭和尾部等頁面公共部分。在公共部分Body中最下面加入:

$!screen_content
</body>

4、其他vm文件中,只寫變化的部分即可,系統(tǒng)通過springmvc配置文件配置以下屬性:

<property name="layoutUrl" value="layout.vm"/>

這樣就可使loyout.vm成為其它所有vm的模板。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI