struts1与struts2都是mvc框架的经典实现模式。
    
   
    
     Struts2不是从Struts1升级而来,而是由WebWork改名而来,而WebWork只是Xwork加了很多WEB拦截器而已
    
   
    
     区别:
    
   
    
     1.核心控制器改成了过滤器(过滤器比Servlet的级别要高,因为程序运行时是先进入过滤器再进入Servlet)
    
   
    
     2.struts1严重依赖于Servlet(因为太过于依赖于api的HttpServletRequest与HttpServletResponse的两个参数),
    
   
    
     struts2就则脱离了Servlet的API。
    
   
    
     3.管理Action时struts1是单例模式,struts2是每个请求产生一个实例。
    
   
    
     4.在表达式的支持上struts2不仅有jstl,还有功能更加强大的ognl表达式。
    
   
    
     5.struts1的类型转换是单向的(页面到ActionForm),struts2是双向的(页面到Action再到页面回显)
    
   
    
     6.校验,struts1没有针对具体方法的校验,struts2提供了指定某个方法进行效验,还有框架校验。
    
   
    
     7.struts2提供了拦截器,利用拦截器可以在访问Action之前或之后增加如权限拦截等功能。
    
   
    
     8.struts2提供了全局范围,包范围,Action范围的国际化资源文件管理实现。
    
   
    
     9.struts2支持多种视图类型
    
   
    
     Spring:轻量级框架
    
   
    
     作用:Bean工厂,用来管理Bean的生命周期和框架集成。
    
   
    
     两大核心:
    
   
    
     1、IOC/DI(控制反转/依赖注入) :把dao依赖注入到service层,service层反转给action层,Spring顶层容器为BeanFactory。
    
   
    
     2、AOP:面向切面编程
    
   
    
     Spring下的注解:
    
   
    
     注册
    
    
     :
    
    
     @Controller @Service @Component
    
    
    
     注入
    
    
     :
    
    
     @Autowired @Resource
    
    
    
     请求地址
    
    
     :
    
    
     @RequestMapping
    
    
    
     返回具体数据类型而非跳转
    
    
     :
    
    
     @ResponseBody
    
   
 
