Struts2与springMVC区别总结

项目框架由Struts2转SpringMVC,总结了下两者区别

 

1、Struts2  核心是一个Filter     StrutsPreparedAndExcuteFilter

SpringMVC是Servlet   DispatcherServlet   控制请求分发

 

2、

Struts是基于类开发,参数传递通过类属性,  每次请求实例化一次action,set注入req数据  由类拦截  只能多例  一个action对应一个上下文

SpringMVC基于类种方法,一个url对应一个方法, 通过方法形参传递参数,    可单例   方法拦截,注解方法注入request  一个方法对应一个上下文

 

3、Struts采用值栈存储请求及响应数据,ognl表达书存取数据

成员属性接收参数,参数被多个方法共享  类属性被所有方法共享

SpringMVC采用request解析请求内容,内部gerParameter给形参赋值, 再把处理过的数据ModelAndView对象存储   Model存储数据,View返回页面    把对象通过request传输到页面

方法独立  独享req res数据  通过参数获取数据,结果由modelMap交给框架,  方法间不共享变量

 

4、Struts与Spring集成,格式转换  SpringMVC与Spring无缝集成

5、数据验证方面,SpringMVC更灵活

6、拦截机制实现,

SpringMVC独立AOP实现,

Struts2有自己的interceptor机制  配置相对复杂

 

7、rest架构   SpringMVC方法易实现

Struts2 action方法对RUL  类属性被方法共享,无法用注解或其他表示属性方法实现   

 

8、Ajax Spring@ResporseBody    Struts集成Ajax用插件或自己写代码 不方便

 

后边几条纯属百度搜索结果,实际开发中未用到,只是描述,不懂原理

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值