最后详细说一说,
 还不怎么理解~~~

解决方案 »

  1.   

    Spring IOC字面意思就是反转控制,也就是说,你不用来找我,我会去找你(没记错的话就是好莱坞的一句经典话,You don't call,I'll call you.)。在EJB开发中我们要查找依赖的对象,通常的做法是通过JNDI等方式来查找一个对象,然后会进行一些与业务毫无关系的初始化等工作,这样我们就不能全部精力来处理我们的业务(《J2EE development without EJB》有详细阐述),IOC把对象的依赖关系转到了XML或其它方式处理,让我们在方法中有全部精力来处理业务。如果LZ还不明白可以看看《Spring in action》中圆桌骑士和吟游诗人的故事,相信你看完那个故事就会明白的。
    Spring AOP通俗来讲就是面向某一具体应用编程(面向方面),在一个应用系统中,肯定会有一些与业务无关的应用,比如Log日志,事物,安全等方面的内容,而这些内容都是可以抽象出来的,让他们凌驾于系统之上,比如Log日志功能,我们可以定义在方法开始,结束或抛出异常的时候来记录日志,而不用在处理业务的时候写一些Log日志的代码,AOP通过一些配置信息在运行时动态插入代码到我们的代码中。如果LZ对Spring AOP的一些概念不清楚,建议看一些《Spring in action》第二版里查电表(没记错是收电费查电表)的例子
      

  2.   

    ioc 在运行的时候动态注入 而不是在一个对象内以new 的形式生成对象。
    aop 在运行一个方法之前 让另外一个方法自动运行
      

  3.   

    google现在中国很纠结,就不要去麻烦人家了
    还是找baidu帮帮忙吧
      

  4.   

    先说IOC  -- 控制反转
      必须得说:你要想理解这个概念,必须写个项目,把spring用起来,然后再来讨论它是怎么回事
    1.以前有三个类 A,B,C ,然后A中要用到B和C类中的方法,没用spring以前,我们是在
    A 去new他们的各自对象 B b = new B() ; C c = new C();,然后b.***(),c.**()去调用这些方法
    说完这些,可以说这所有的代码都控制在你自己的手中,一切都是你控制的
    2.现在你用了spring,OK,用它的DI,那么A中不要再去new这些对象了,配置一下,spring自动把这些
    类的对象创建好然后通过set方法注给你。 你可以看到那些许多的类你不用自己new了也不要自己去管理了
    spring帮你管理,你可以理解这个控制权转到spring那去了,这个很demo的例子看不出spring的强大,当你项目写多了的时候那时候各个层次的类都通过它管理的时候就会体验到它的强大了。
      

  5.   

    再说AOP 面向切面编程
      这个几句话说不清、就算说得清、也听不懂;比如他的好处是:对OO编程的一个有力补充,你能明白吗?不过spring中的AOP不是它自己实现的,用的是第三方的一个框架叫aspectJ。
    在JAVAEE项目中主要用spring的AOP做声明式的事务管理。
    spring中的AOP的实现用的JDK的动态代理和CGLIB。。(这个网上源码可以看到 )
      

  6.   

    都是SPRING框架的特点哦!~~~~~~~~
      
      一个控制反转
      一个面向切面