Spring对很多开源框架都提供了集成和支持。在视图方面有jsp,velocity,freemarker等视图技术。那么在一个基于Spring的框架下,如何集成Velocity视图模板技术呢。只需要做三件事。在这里就不再说明如何配置一个基于Spring的web项目了。如何想知道可以看看我的另一篇博文,叫做Spring+Hibernate项目配置,里面有模板框架项目可供下载。还是回归正题。
Velocity作为一种有别于jsp的视图模板技术,由VelocityEngine对其文件进行解析,相比于jsp,效率更高,因为jsp在解析需要经过,解释成为java文件,编译成class文件这么几个阶段,所以从时间概念上来说,要比velocity慢。
一。引入Velocity包
<!-- Velocity dependency --> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity</artifactId> <version>1.5</version> </dependency>
二。在application-context.xml配置文件里配置VelocityConfigurer,当然也可以在dispatcher-servlet里面配置,这完全取决于你自己的想法。
<bean id="velocityConfigurer" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer"> <property name="resourceLoaderPath" value="/WEB-INF/views"/> </bean>
三。在dispatcher-servlet里配置VelocityViewResolver
<bean id="velocityViewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver"> <property name="suffix" value=".vm"/> </bean>
相信使用Spring配置过jsp view的人应该很清楚这两个配置的概念吧。第一个使Spring能够知道我们的模板文件是放在哪里的,第二个则是针对一个模板文件的了,使用的是什么后缀。因为在第一个配置里已经有了文件的位置,所以在第二个配置里就不需要配置前缀了。