从以下几个方面来简单的说一下个人对这两者的差别:

①springmvc使用更加的简便,更加的灵活,与spring的结合的更好。

②struts2相对来说比springmvc要重(哈哈  重也有重的好处,哪就是支持的功能更多)。

③ 两者的入口的实现方式是不一样的,struts2 使用的是filter也就是过滤器,而springmvc使用的是servlet,dispathServlet。(有人可能会说我的filter的底层使用的也是servlet啊,关于servlet和filter的区别我们下次再详说)。

④在拦截器的实现上,struts2 使用的是自己实现的interceptor机制,而springmvc使用的HandlerInterceptor 或者HandlerInterceptorAdapter的适配器都是使用的spring的AOP原理实现的。

⑤springmvc原生态的集成了ajax,struts2在其拦截器中有集成,使用的时候需要装插件或者自己在action中通过request手动的设置,较不方便。

⑥SpringMVC开发效率和性能高于Struts2,这也就是为什么许多的互联网公司都使用的springmvc。

⑦springmvc可以实现100%的零配置,全部使用纯注解的方式。

⑧Struts2是类级别的拦截, 一个类对应一个request上下文,SpringMVC是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应,所以说从架构本身上SpringMVC就容易实现restful url,而struts2的架构实现起来要费劲,因为Struts2中Action的一个方法可以对应一个url,而其类属性却被所有方法共享,这也就无法用注解或其他方式标识其所属方法了。

   上面是一些个人对两者区别的理解,可能有所偏差还请各位指出。下面开始我们的springmvc的学习之路。

首先来一张网上盛传的springmvc的流程图

spring入门学习导引

这个图片很大,但是基本上可以使用这个图片将springmvc说清楚了就。

我对这个的学习流程是这样的 springmvc的加载过程-----》springmvc的请求处理过程---》 dispatherServlet的学习---》拦截器handleInterctppt----》handleMapping----》handleAdapter---》我们自己的controller如何在mapping中注册----》modleAndView如何解析视图---》springmvc的一些策略模式的对象学习。

转载于:https://my.oschina.net/wugong/blog/1616453

相关文章:

  • 2021-07-23
  • 2021-07-16
  • 2021-11-17
  • 2022-12-23
  • 2022-01-21
  • 2021-03-27
  • 2021-07-02
  • 2021-06-19
猜你喜欢
  • 2021-09-02
  • 2021-09-03
  • 2022-12-23
  • 2021-11-19
  • 2021-08-10
  • 2021-11-27
  • 2021-04-02
相关资源
相似解决方案