當(dāng)前位置:
首頁(yè) >
前端技术
> javascript
>内容正文
javascript
[Spring MVC] - JSP + Freemarker视图解释器整合
生活随笔
收集整理的這篇文章主要介紹了
[Spring MVC] - JSP + Freemarker视图解释器整合
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Spring MVC中如果只使用JSP做視圖,可以使用下面這段即可解決:
<!-- 視圖解釋類 --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/views/"/><property name="suffix" value=".jsp"/><!--可為空,方便實(shí)現(xiàn)自已的依據(jù)擴(kuò)展名來(lái)選擇視圖解釋類的邏輯 --><property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /></bean>?
但很多時(shí)候我們需要的不只是JSP做view,可能會(huì)引用velocity、freemarker等做為view引擎時(shí),需要加入額外的配置。
下面是在配置文件中加入Freemarker的方法,與JSP并存:
<!--JSP視圖解析器--><bean id="viewResolverJsp" class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/views/"/><property name="suffix" value=".jsp"/><property name="viewClass" value="org.springframework.web.servlet.view.InternalResourceView"/><property name="order" value="1"/></bean><!-- 配置freeMarker視圖解析器 --><bean id="viewResolverFtl" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"><property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/><property name="contentType" value="text/html; charset=UTF-8"/><property name="exposeRequestAttributes" value="true" /><property name="exposeSessionAttributes" value="true" /><property name="exposeSpringMacroHelpers" value="true" /><property name="cache" value="true" /><property name="suffix" value=".ftl" /><property name="order" value="0"/></bean><!-- 配置freeMarker的模板路徑 --><bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"><property name="templateLoaderPath" value="/WEB-INF/views/"/><property name="freemarkerVariables"><map><entry key="xml_escape" value-ref="fmXmlEscape" /></map></property><property name="defaultEncoding" value="UTF-8"/><property name="freemarkerSettings"><props><prop key="template_update_delay">3600</prop><prop key="locale">zh_CN</prop><prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop><prop key="date_format">yyyy-MM-dd</prop><prop key="number_format">#.##</prop></props></property></bean><bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>在JSP和Freemarker的配置項(xiàng)中都有一個(gè)order property,上面例子是把freemarker的order設(shè)置為0,jsp為1。
意思是找view時(shí),先找ftl文件,再找jsp文件做為視圖。
?
測(cè)試:
Controller:
package com.my.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView;@Controller @RequestMapping(value="ftl") public class TestFreemarker {@RequestMapping(method=RequestMethod.GET)public ModelAndView index() {ModelAndView view = new ModelAndView("TestFreemarker/index");view.addObject("message", "Say hi for Freemarker.");return view;}}?
index.ftl:
<Html><head><title>${message}</title></head><body><b>${message}</b><body> </html>?
輸出:
轉(zhuǎn)載于:https://www.cnblogs.com/HD/p/4142822.html
總結(jié)
以上是生活随笔為你收集整理的[Spring MVC] - JSP + Freemarker视图解释器整合的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 远程linux服务器mysql数据库导入
- 下一篇: if the parser found