整了一天的SpringMVC 3.1

其实之前使用过SpringMVC 3.0做过一个实验项目,发现很多问题,最明显的就是与Validation的问题,并没有考虑到分组校验,再者,就是FlashMessage实现的问题,这个得自己写,这个我确实花了一些时间去复习Filter。

SpringMVC 3.1解决掉了这些问题,加多了一个@Validated,以及RedirectAttributes。

而SpringMVC 3.1还加多了一个特性,就是对Servlet 3.0的支持,可以无xml进行配置。可是在实践中,发现这样很麻烦,你得写一大堆的Bean配置类,特别是对数据源定义这样的多参数的Bean,简直就是累死。再者,诸如整合Spring Security这样的东西,使用xml方便太多了,而使用@Bean定义,你得抄它们的家底才行,不然你压根儿就不知道该实例化哪个类,这个过程真是折磨人。再者,因为使用了配置类来配置Spring,所以IDE就没办法解悉类的定义,所以很在编辑器里出现N多错误提示(IDEA)。

最好的方法就是,Xml和注解相结合,可以方便很多。

其实Spring MVC 3.1的RedirectAttributes是我向往的主要原因,因为我写的FlashMessage实现实在感觉太山寨,所以从RC开始我就关注这个。可是今天使用后,也感觉不是很爽。RedirectAttributes的属性只在跳转到其它页面时才有效,在本页就无效了,怎么说呢?比如说,如果我在本页进行了Form校验,出错了,我想加个error message,然后真接就Forward到视图,FlashMessage就显示出来,同时把Form自动填满,可是RedirectAttributes就做不到了(在YiiFramework里能轻易做到)。

或许还有很多功能可以用,嗯,我得慢慢探索才行。

你可能感兴趣的:(整了一天的SpringMVC 3.1)