spring mvc中使用多种视图的办法

springmvc中使用多种视图的办法

一般spring mvc配置jstl做视图。比如:

 

< bean class ="org.springframework.web.servlet.view.InternalResourceViewResolver" > < property name ="prefix" value ="/WEB-INF/mm/jsp/" /> < property name ="suffix" value =".jsp" /> </ bean >

如果使用多种视图,有一种办法是配置多个spring servlet,比如这个链接:

http://www.javaeye.com/topic/32447

这种办法是根据url后缀,选择使用不同的spring servlet。spring mvc也支持视图链,在一个springservlet中,spring mvc可逐个选择视图。比如我需要支持freemarker视图和jsp/jstl视图,springmvc可先查找是否有freemarker视图,如没有再查找jsp/jstl视图。

以下是freemarker和jsp/jstl多视图配置文件:

 

< bean class ="org.springframework.web.servlet.view.ResourceBundleViewResolver" > < property name ="basename" value ="views" /> < property name ="order" value ="0" /> </ bean > < bean class ="org.springframework.web.servlet.view.InternalResourceViewResolver" > < property name ="prefix" value ="/WEB-INF/mm/jsp/" /> < property name ="suffix" value =".jsp" /> </ bean > < bean id ="freemarkerConfig" class ="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer" > < property name ="templateLoaderPath" > < value > /WEB-INF/mm/freemarker/ </ value > </ property > </ bean >

上面为ResourceBundleViewResolver设置了order属性,用于定义顺序,在jsp处理之前。

这里使用了ResourceBundleViewResolver,还需要有它的配置文件,这里配置的名称是views.properties,需要把它放置在classpath的根下。

 

register.(class) = org.springframework.web.servlet.view.freemarker.FreeMarkerViewregister.url = register.ftl

这里的register,是springmvc返回字符串的名称。url部分,要写freemarkerConfig中设置templateLoaderPath下的文件路径。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值