论坛首页 Java企业应用论坛

Spring MVC framework深入分析之一--总体分析

浏览 73874 次
该帖已经被评为精华帖
作者 正文
   发表时间:2006-06-19  
makefile 写道
lwhchoice 写道
写的书都不怎么样

1,看看without EJB,在读读jpetstore的例子,你还不懂吗?
俺就喜欢简单的框架,明明用spring MVC能实现WEB框架
还要搞WEBWORK干吗?还要多学习如何配置,如果写拦截器等一系
列的知识.我就没看出webwork2从实质上比spring MVC
好在哪?哪个功能必须webwork2实现,spring MVC不能实现?

受不了了,你也不看看哪个先哪个后
0 请登录后投票
   发表时间:2006-07-20  
我遇到的问题是要在部分Controller中共享一些逻辑,spring的HandleInterceptor和HandlerMapping配置在一起,很不方便,我总不能配一堆HandlerMapping吧.有没有象webwork那种和Controller梆在一起的Interceptor.
0 请登录后投票
   发表时间:2006-07-21  
xiecc 写道
五、 Spring提供了不错但不够充分的interceptor机制
回头看一下struts,它在架构里甚至没有给我们提供hook point的机会,我们没有任何机会加入自己的interceptor。我们只能通过重载struts的RequestProcessor类来进行一点有限的扩展。
到了Webwork2,似乎interceptor一下子成了整个Framework的核心,除了Action的核心部件,其它所有的东西都是interceptor。它的超强的interceptor功能使们扩展整个架构变得非常方便。有人称这种interceptor为AOP,Jason Carreira则自豪地宣称这个叫做pragamtic AOP。我不认同这是AOP,它只是简单的interceptor机制。但不管如何,它的interceptor确实有强大的功能。
Spring也提供了它的interceptor机制,它的HandlerInterceptor三个interceptor方法:peHandle, postHandle, afterCompletion。分别对应Controller执行前,Controller执行后和page render之后。虽然大多数情况下已经够用,但是从功能上来说显然它没有Webwork2强大。从AOP的角度来看,它没有提供around interceptor,而只有before与after interceptor。这意味着我们无法在interceptor前后保持状态,最简单的情况假如我们要计算一个Controller的执行时间,我们必须在执行完before后把begintime这个状态保持住,再在after里把它调出来,但是显然这个状态保持会是个问题,我们不能把它放到instance变量里,因为interceptor不是线程安全的。也许通过ThreadLocal可以解决这个问题,但是如此简单的功能要用到这样的方法来处理,显然这个Interceptor本身设计上还是有点问题的。


不知道要在多个Controller中复用Interceptor该怎么处理?难道要配置一堆的HandlerMapping,如果有很多的Controller和Interceptor,并且他们的组合方式也不相同,通过配置HandlerMapping的方式就不可能了.
0 请登录后投票
   发表时间:2006-07-24  
今年一个小项目里用了一把Spring MVC感觉还是不错的 配置上也并不是很麻烦 从完全陌生到基本使用没问题没花多少时间。。
它不用作一些特别的集成
我发现自己现在最不喜欢Struts的tag  宁可用JSTL代替

不过我们现在的项目用的就是Struts
想起去年的项目用WebWork的拦截器用的好爽啊
0 请登录后投票
   发表时间:2006-12-26  
但从模式及性能上考虑,我觉得spring和struts的多线程控制很经典,这对程序员在线程安全上的要求更高,就是喜欢spring啊,嘿嘿
0 请登录后投票
   发表时间:2007-06-01  
mvc没有set get获取参数.做分页,很难做一个通用的分页
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics