网站建设的布局对网络推广的影响,特效比漂亮的网站,微信支付 网站开发,网站建设拟采用的技术路线SpringMVC与Struts2区别与比较总结 1、Struts2是类级别的拦截#xff0c; 一个类对应一个request上下文#xff0c;SpringMVC是方法级别的拦截#xff0c;一个方法对应一个request上下文#xff0c;而方法同时又跟一个url对应#xff0c;所以说从架构本身上SpringMVC就容易…SpringMVC与Struts2区别与比较总结 1、Struts2是类级别的拦截 一个类对应一个request上下文SpringMVC是方法级别的拦截一个方法对应一个request上下文而方法同时又跟一个url对应所以说从架构本身上SpringMVC就容易实现restful url而struts2的架构实现起来要费劲因为Struts2中Action的一个方法可以对应一个url而其类属性却被所有方法共享这也就无法用注解或其他方式标识其所属方法了。 2、由上边原因SpringMVC的方法之间基本上独立的独享request response数据请求数据通过参数获取处理结果通过ModelMap交回给框架方法之间不共享变量而Struts2搞的就比较乱虽然方法之间也是独立的但其所有Action变量是共享的这不会影响程序运行却给我们编码 读程序时带来麻烦每次来了请求就创建一个Action一个Action对象对应一个request上下文。 3、由于Struts2需要针对每个request进行封装把requestsession等servlet生命周期的变量封装成一个一个Map供给每个Action使用并保证线程安全所以在原则上是比较耗费内存的。 4、 拦截器实现机制上Struts2有以自己的interceptor机制SpringMVC用的是独立的AOP方式这样导致Struts2的配置文件量还是比SpringMVC大。 5、SpringMVC的入口是servlet而Struts2是filter这里要指出filter和servlet是不同的。以前认为filter是servlet的一种特殊这就导致了二者的机制不同这里就牵涉到servlet和filter的区别了。 6、SpringMVC集成了Ajax使用非常方便只需一个注解ResponseBody就可以实现然后直接返回响应文本即可而Struts2拦截器集成了Ajax在Action中处理时一般必须安装插件或者自己写代码集成进去使用起来也相对不方便。 7、SpringMVC验证支持JSR303处理起来相对更加灵活方便而Struts2验证比较繁琐感觉太烦乱。 8、Spring MVC和Spring是无缝的。从这个项目的管理和安全上也比Struts2高当然Struts2也可以通过不同的目录结构和相关配置做到SpringMVC一样的效果但是需要xml配置的地方不少。 9、设计思想上Struts2更加符合OOP的编程思想 SpringMVC就比较谨慎在servlet上扩展。 10、SpringMVC开发效率和性能高于Struts2。 11、SpringMVC可以认为已经100%零配置。转载于:https://www.cnblogs.com/nanfeng99/p/11240125.html