您的位置 首页 java

struts2和springMVC的区别是什么?

区别:springmvc入口是一个servlet前端控制器,struts2入口是一个filter过滤器;2、springmvc是基于方法开发的,struts2是基于类开发的;3、和SpringMVC相比,而Struts2验证比较繁琐。

推荐:《java学习》

struts2和springMVC的区别

1、springmvc入口是一个servlet前端控制器( DispatcherServlet ),struts2入口是一个filter过滤器(StrutsPrepareAndExecuteFilter).

2、struts2通过在action类中定义成员变量接收参数,(属性驱动和模型驱动),它只能使用多例模式管理action.

springmvc通过在coontroller方法中定义形参接收参数,springmvc可以使用单例模式管理controller.

3、springmvc是基于方法开发的,注解开发中使用requestMapping将url和方法进行 映射,如果根据url找到controller类的方法生成一个handler处理器对象(只包括一个method).

struts2是基于类开发的,每个请求过来创建一个action实例,实例对象中有若干个方法.

开发中建议使用springmvc,springmvc方法更类似service业务方法.

4、struts2采用值栈存储请求和相应的数据,通过OGNL存取数据;springmvc通过参数绑定期将request请求内容解析,并给方法形参赋值.

5、struts2和springmvc的速度是相当的,由于struts2的漏洞较多,跟多企业使用springmvc

6、SpringMVC验证支持JSR303,处理起来相对更加灵活方便,而Struts2验证比较繁琐,感觉太烦乱。

7、设计思想上,Struts2更加符合OOP的编程思想, SpringMVC就比较谨慎,在servlet上扩展。

8、拦截器实现机制上,Struts2有以自己的interceptor机制,SpringMVC用的是独立的AOP方式,这样导致Struts2的配置文件量还是比SpringMVC大。

更多编程相关知识,请访问:编程入门!!

文章来源:智云一二三科技

文章标题:struts2和springMVC的区别是什么?

文章地址:https://www.zhihuclub.com/19399.shtml

关于作者: 智云科技

热门文章

网站地图