jsp springmvc 视图解析器_SpringMVC整合jsp与velocity 配置多个视图解析器

本来的项目是纯SpringMVC的,没办法,只会java。后来觉得是不是可以用其它东西来替换jsp,然后发现velocity的东西。

velocity是一种模板语言,与它类似的还有freemark。veocity的优点的快,缺点的功能不算特别强大;freemark的功能超级强大,但速度慢一些。我偏向使用简洁快速的velocity,另外velocity的layout功能也是我决定用它来替换jsp的一个原因。

整合多视图

原来还用着的jsp不可能马上就干掉,所以需要在SpringMVC里配置多个视图解析器(ViewResolver)

好在SpringMVC本身就支持多个视图的配置,原来的配置如下:

现在要增加一个velocity视图解析器,增加一个VelocityLayoutViewResolver的,同时要注意order参数的配置。SpringMVC不知道每个解析器的调用顺序,需要我们自己在配置时就配置好:

因为要兼容原来的jsp视图,所以我将jsp配置成了优先级最高。对于velocity还要增加一些配置,以下是velocity必须要有的配置

以及velocity.properties的配置

#设置字符集 input.encoding=UTF-8 output.encoding=UTF-8

velocity的layout用法

如果只是简单的把jsp文件改成用vm文件来写就没有什么意思了,layout是一个比较有意思的用法,它可以将大量公共的页面框架写成一个独立的文件,让最终的视图文件去引用。即可以大量简化代码,又可以让程序员专注与当前的页面逻辑。

模板文件如下:

## file=template.vm  

 $!page_title   $screen_content  

业务文件代码如下:

#set( $layout = "template.vm" ) #set( $page_title = "this is the test page") #define($screen_content) this is buisin content #end

看多简单!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值