二十Spring MVC与Structs2的区别总结

Posted drq1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二十Spring MVC与Structs2的区别总结相关的知识,希望对你有一定的参考价值。

一、框架的入口

1、Structs2采用Filter(StructsPrepartAndExecuteFilter)来进行实现。

2、SpringMVC采用Servlet(DispatcherServlet)来进行实现。

Filter在容器启动之后立即初始化,服务器停止后销毁,比Servlet晚。

Servlet是在调用的时候初始化,比Filter先调用,服务停止后销毁。

二、拦截原理

Structs2:类级别的拦截,每次请求都会创建一个Action,然后一个Action对应一个Request,Response。Action的一个方法可以对应一个URL,而Action的类属性都是被所有方法共享的,所以就无法用注解或者其他方式来标识所属方法。

SpringMVC:方法级别的拦截,Controller中一个方法对应一个Request,Response。方法直接是独立的,直接独享Request,Response的数据。每个方法同时对应一个URL,参数的传递直接注入到方法中,参数是方法所独有的。处理结果通过ModelAndView返回给框架。

三、性能问题

SpringMVC实现了零配置,SpringMVC基于方法的拦截,Structs2是基于类级别的拦截,每一次请求对应一个新的Action,需要加载所有的属性值的注入。SpringMVC开发效率高与Structs2。

四、集成Ajax

SpringMVC集成了Ajax,只需要注解@ResponseBody就可以实现Ajax,直接返回响应就行。而Structs2拦截器集成了Ajax,在Action中处理时一般必须安装插件或者自己写代码集成进去,使用不太方便。

 

以上是关于二十Spring MVC与Structs2的区别总结的主要内容,如果未能解决你的问题,请参考以下文章

Spring Mvc 用Demo去学习

Spring : 基于注解的 Spring MVC( 上 )

基于注解的 Spring MVC(上)

Spring6:基于注解的Spring MVC(上篇)

ssh框架整合

ssh整合思想初步 structs2 Spring Hibernate三大框架各自要点