IOC和AOP DI

Posted wqjjinbu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOC和AOP DI相关的知识,希望对你有一定的参考价值。

先去看DI帮忙,

DI 简单一点

    比如我要写一银行的存款 写完后,发现每次的写的都是CRUD 于是感觉麻烦,封装一个类,专门的去写一个工具类

    然后你的朋友帮忙,于是你们制定了一个接口;

    但是随之而来的问题,每次在实现的时候都要new的对象,耦合度太大,也太浪费资源,于是你写了一个容器,把bean对象装在了里面,

    这样不用每次都在去new,于是你写了一个xml去取这个容器里面的对象,但是有感觉太麻烦,自定义了一堆注解(awried),去注入到容器里面,

    然后你有考虑到一写与业务逻辑关的代码,dao的每次都要连接数据库,但每次链接都很浪费资源,怎么办,自定义了一个工具类,

    专门的去写一个连接数据库的工具类,但是当人多的情况下,又发现效率太慢,于是又写了一个容器,把那些无关了代码都扔到了一个容器里面,

    但是怎么取,于是你想到之前javabean对象方法,但悲哀的发现那只是注入,于是写一个大的容器(单列模式),接着呢 有把之前的两个容器,放到了这个大容器,

    通得到注入容器后,用JDK动态代理的方式去得到,于是,你发现在后来还是有时候效率高,有时低,于是便加入了日志什么的 

  

以上是关于IOC和AOP DI的主要内容,如果未能解决你的问题,请参考以下文章

IOC和DI,AOP的本质理解

Spring核心思想:IOC(控制反转)DI(依赖注入)和AOP(面向切面编程)

IOC和AOP DI

Spring的学习二(Spring Ioc和DI,AOP简介)

理解Spring的AOP和Ioc/DI就这么简单

Spring 之 控制反转(IoC), 依赖注入(DI)和面向切面(AOP)