springmvc整合restful MVC 整合 freemarker 问题 是这样配置吗

&&&&springmvc项目源码、整合freemarker
springmvc项目源码、整合freemarker
使用springMVC搭建的项目源码,整合freemarker,搭建配置有问题的可以参看一下,有问题留言,一起学习!
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
开发技术下载排行***Spring MVC的多视图解析器配置及与Freemarker的集成
***Spring MVC的多视图解析器配置及与Freemarker的集成
/blog/1426952一、从freemarker谈起Freemarker使用模板技术进行视图的渲染。自从看了Struts标签、Freemarker、JSTL的性能对比后,我毅然决定放弃Struts标签了!效率太差……Spring本身支持了对Freemarker的集成。只需要配置一个针对Freemarker的视图解析器即可。&二、Spring MVC视图解析器视图解析器的工作流程大致是这样的:Controller的某个方法执行完成以后,返回一个视图(比如:listUser),视图解析器要做的工作就是找到某个对象来完成视图的渲染,或者跳转到其他的逻辑视图。这里的渲染对象通常就是我们的jsp文件或者我们下面用的Freemarker(例如listUser.jsp或者listUser.ftl)。渲染完成以后,将解析结果发送到客户端浏览器下面介绍一下本文需要用到的解析器(更多解析器资料,请参考&&):InternalResourceViewResolver:这是一个最常用的解析器。通常使用它指定渲染对象为jsp页面FreeMarkerViewResolver:这就是Spring与Freemarker整合需要用到的解析器&三、配置多视图,支持freemarker我们通常不希望所有的动态页面请求都使用Freemarker来渲染,那就需要配置多个视图解析器。网上有很多这方面的帖子。我看到很多人的做法是在web.xml中配置两个DispatcherServlet,一个拦截*.do,一个拦截*.然后再写两个dispatcherServlet.xml,配置两个视图解析器;jsp页面、ftl模板就各司其职。其实没有那么复杂。1.Web.xml&Xml代码&&&version="1.0"&encoding="UTF-8"&&&version="2.4"&xmlns="/xml/ns/j2ee"&&&&&&xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&&&&&&xsi:schemaLocation="/xml/ns/j2ee&&&&&&&/xml/ns/j2ee/web-app_2_4.xsd"&&&&&&&&&&&&&&&&index.jsp&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&dispatcher&&&&&&&&&&org.springframework.web.servlet.DispatcherServlet&&&&&&&&&&&&&&&&&&&&&&&&contextConfigLocation&&&&&&&&&&&&&&/WEB-INF/classes/applicationContext.xml&&&&&&&&&&&&&&&&&&&&1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&dispatcher&&&&&&&&&&*.do&&&&&&&&&&&&2.dispatcherServlet.xml&Xml代码&&&version="1.0"&encoding="UTF-8"&&&xmlns="http://www.springframework.org/schema/beans"&&&&&&xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&xmlns:aop="http://www.springframework.org/schema/aop"&&&&&&xmlns:tx="http://www.springframework.org/schema/tx"&&&&&&xmlns:p="http://www.springframework.org/schema/p"&&&&&&xmlns:context="http://www.springframework.org/schema/context"&&&&&&xmlns:mvc="http://www.springframework.org/schema/mvc"&&&&&&xsi:schemaLocation="&&&&http://www.springframework.org/schema/beans&http://www.springframework.org/schema/beans/spring-beans-2.5.xsd&&&&http://www.springframework.org/schema/tx&http://www.springframework.org/schema/tx/spring-tx-2.5.xsd&&&&http://www.springframework.org/schema/aop&http://www.springframework.org/schema/aop/spring-aop-2.5.xsd&&&&http://www.springframework.org/schema/context&http://www.springframework.org/schema/context/spring-context-2.5.xsd&&&&http://www.springframework.org/schema/mvc&&http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"&&&&&&&&&&&&&&&&&&&&&id="viewResolverCommon"&class="org.springframework.web.servlet.view.InternalResourceViewResolver"&&&&&&&&&&&name="prefix"&value="/WEB-INF/page/"&&&&&&&&&&&&&name="suffix"&value=".jsp"&&&&&&&&&&&name="viewClass"&&&&&&&&&&&&&&org.springframework.web.servlet.view.InternalResourceView&&&&&&&&&&&&&&&&&&&&&name="order"&value="1"&&&&&&&&&&&&&&&&&&&&&&&&&id="viewResolverFtl"&class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"&&&&&&&&&&&name="viewClass"&value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"&&&&&&&&&&&name="contentType"&value="text/&charset=utf-8"&&&&&&&&&&&name="cache"&value="true"&&&&&&&&&&&&name="suffix"&value=".ftl"&&&&&&&&&&&&name="order"&value="0"&&&&&&&&&&&&&&&&&&&&&&&&&id="freemarkerConfig"&class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"&&&&&&&&&&&name="templateLoaderPath"&&&&&&&&&&&&&&/WEB-INF/ftl/&&&&&&&&&&&&&&&&&&&&&name="freemarkerVariables"&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&key="xml_escape"&value-ref="fmXmlEscape"&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&name="defaultEncoding"&&&&&&&&&&&&&&utf-8&&&&&&&&&&&&&&&&&&&&&name="freemarkerSettings"&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&key="template_update_delay"3600&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&id="fmXmlEscape"&class="freemarker.template.utility.XmlEscape"&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&base-package="com.hl.usersmanager"&&&&&&&&&&&!--&允许定义过滤器将基包下的某些类纳入或排除&&&&&&&&&&&type="annotation"&expression="org.springframework.stereotype.Controller"&--&&&&&&&&&&&&&&&&&&3.ControllerJava代码&&package&com.hl.usersmanager.&&&&import&java.util.L&&&&import&org.springframework.beans.factory.annotation.A&&import&org.springframework.stereotype.C&&import&org.springframework.ui.ModelM&&import&org.springframework.web.bind.annotation.RequestM&&&&import&com.hl.usersmanager.model.U&&import&com.hl.usersmanager.service.IUserS&&&&@Controller&&public&class&UserController&{&&&&&&&&@Autowired&&&&&&private&IUserService&userS&&&&&&&&@RequestMapping(value&=&"findUserByName.do")&&&&&&public&String&findUserByName(String&name,ModelMap&model)&{&&&&&&&&&&Users&users&=&userService.findUserByName(name);&&&&&&&&&&model.addAttribute("userPhone",users.getPhone());&&&&&&&&&&System.out.println("userPhone:"&+&users.getPhone());&&&&&&&&&&return&"showUser";&&&&&&}&&&&&&&&&&&&@RequestMapping(value&=&"findAllUsers.do")&&&&&&public&String&findAllUsers(ModelMap&model)&{&&&&&&&&&&List&Users&&users&=&userService.findAllUsers();&&&&&&&&&&model.addAttribute("users",users);&&&&&&&&&&return&"listUser";&&&&&&}&&&&&&&&&&&&……&&}&&&在视图解析器中有一个&property name="order" value="orderValue"/&的配置,这个配置表示解析器的优先级别。我们将FreeMarkerViewResolver的级别设为0,将InternalResourceViewResolver的级别设为1。这样,解析器就会优先使用 FreeMarkerViewResolver&进行解析,如果找不到相应的模板,就使用InternalResourceViewResolver进行解析,如果还找不到页面,就会产生一个404错误!在本例中,我们在/WEB-INF/page/下有一个showUser.jsp页面,在/WEB-INF/ftl/下有一个listUser.ftl的模板文件。那么当访问findAllUsers.do的时候,Controller返回一个listUser视图,根据解析器配置,先使用FreeMarkerViewResolver进行解析。它会根据模板路径templateLoaderPath的配置/WEB-INF/ftl/下去找是否有一个listUser并且以后缀配置suffix值.ftl,即listUser.ftl文件,如果找到则使用该模板进行解析。这里我们实现已经创建了这个模板文件,所以user列表成功被显示出来。当用户访问findUserByName.do的时候,返回showUser视图,毅然先使用FreeMarkerViewResolver进行解析,结果发现在/WEB-INF/ftl/下并没有showUser.ftl这个模板文件,于是使用InternalResourceViewResolver进行解析,于是开始寻找/WEB-INF/page/下是否有showUser.jsp文件。由于我们已经创建了这个文件,于是最终使用showUser.jsp进行渲染。那么如果没有找到showUser.jsp,就会抛出404错误。这里还要注意的是,如果Controller中返回视图加了后缀jsp或者ftl,在配置中就不要加入suffix配置,否则会找不到页面。
发表评论:
TA的最新馆藏[转]&<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&Spring MVC 整合Freemarker的问题,求请教
[问题点数:20分,结帖人aidong2008]
Spring MVC 整合Freemarker的问题,求请教
[问题点数:20分,结帖人aidong2008]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
本帖子已过去太久远了,不再提供回复功能。15:07 提问
freemarker 整合问题
Spring mvc freemaker 配置了那个日期时间的转换 但是在ftl文件里面${参数}报错 难道要自己调用内部函数格式化吗
先上图吧 各位帮忙看看
按赞数排序
Properties文件中只是存放了你的配置信息,他自己不会自动帮你转换哦,它只是以一种键值对的形式存在了那个文件中
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!
698关注|164收录
784关注|426收录
721关注|1142收录
其他相似问题}

我要回帖

更多关于 redis与springmvc整合 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信