springmvc与struts2比较
1、springmvc的入口是servlet,struts2是filter.
2、springmvc是方法级别的拦截,struts2是类级别的拦截。
3、struts2有自己的interceptor机制,springmvc用的是独立的AOP方式。
4、springmvc对ajax的支持上优于struts2.
5、springmvc性能略高于struts2.
1、springmvc的入口是servlet,struts2是filter
filter和servlet的区别
filter不是一个servlet,它不能产生response,它能够在一人request到达servlet之前预处理request,也可以在离开servlet时处理response。换种说法,filter其实是一个"serlvet chaining"(servlet链)。
一个filter包括:
(1)、在servlet被调用之前截获
(2)、在servlet被调用之前检查servlet request
(3)、根据需要修改request头和request数据
(4)、根据需要修改response头和response数据
(5)、在servlet被调用之后截获
而servlet为用户发送一个请求,通过servlet容器调用servlet的init()方法初始化servlet,并调用servlet的service()方法对请求进行处理,并将处理结果通过response返回给用户。
filter和拦截器的区别
(1)、拦截器是基于java反射机制的,而filter是基于函数回调的。
(2)、filter依赖于servlet容器,而拦截器不依赖与servlet容器。
(3)、拦截器只能对action请求起作用,而filter则可以对几乎所有请求起作用。
(4)、拦截器可以访问action上下文、值栈里的对象,而filter不能。
filter是在java web中,用户传入request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或者action进行业务逻辑。
比如过滤一些特殊字符.
action执行前后执行拦截器本身提供的各种Web功能需求。
2、springmvc是方法级别的拦截,struts2是类级别的拦截。
springmvc是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应,参数的传递是直接注入到方法听,是该方法独有的。
struts2是类级别的拦截,一个类对应一个request上下文,struts2是在接受参数的时候,可以用属性来接受参数,这就说明参数是让多个方法共享的,这也就是无法用注解或其他方式标识其他所属的方法了。
3、struts2有自己的interceptor机制,springmvc用的是独立的AOP方式。
struts2有以自己的interceptor机制,spring mvc 用的是独立的AOP方式。这样导致struts2的配置文件量还是比spring mvc大,虽然struts2的配置能继承,spring mvc使用更加简洁。
4、springmvc对ajax的支持上优于struts2.
引入下面两个jar包
jackson-core-asl-1.8.7.jar
jackson-mapper-asl-1.8.7.jar
spring的配置文件中要有这一行,才能使用到spring内置支持的json转换。如果你手工把POJO转成json就可以不须要使用spring内置支持的json转换。
<mvc:annotation-driven />
使用@ResponseBody注解
分享到:
相关推荐
SpringMVC与struts2比较及技术特点
struts2介绍、和springmvc对比,mybatis介绍和hibernate对比
SpringMVC与struts的区别简单易懂对比理解
springMVC+struts+hibernate整合简单的增删改查
这是使用springmvc+struts+mybatis的基础项目,初学者可以下载研究。
SSM-SpringMVC-Struts2基础框架
springmvc,struts,mybatis jar包
Java面试题51.SpringMVC和Struts2的不同.mp4
springmvc和mybatis整合,springmvc和hibernate整合,struts2和mybatis整合,struts2和hibernate整合
主要介绍了简单了解SpringMVC与Struts2的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
java面试宝典
SpringMVC MyBatis Struts Spring Hibernate全套教学视频【4.3G】 网盘下载地址 【付费下载之后的用户,可留言获取更多下载资源】
Java Web框架例子合集(spring,springmvc,mybatis,struts2,hibernate)
springmvc框架原理(掌握) 前端控制器、处理器映射器、处理器适配器、视图解析器 springmvc入门程序 目的:对前端控制器、处理器映射器、处理器适配器、视图解析器学习 ...springmvc和struts2的区别
javaweb开发框架5个最新版本放一起了,包括Hibernate5.3.1、mybatis-3.4.6、spring5.0.7、Struts2.5.16
Struts2和SpringMvc区别.md
该文档主要使用springmvc和struts2实现了图片上传和下载功能的例子
传智播客框架笔记学习资料,只有pdf和doc文件,传智播客框架笔记学习资料,只有pdf和doc文件
springmvc基础 包含代码+知识点+详细解释 1. 什么是springmvc? 2. springmvc框架原理 前端控制器、处理器映射器、处理器适配器、视图解析器 3. springmvc入门程序 目的:对前端控制器、...6. springmvc和struts2区别
使用maven整合了struts2+spring+mybatis+springMVC四种开源框架,oracle数据库