zoukankan      html  css  js  c++  java
  • spring 的 IOC和AOP

    Spring IOC:

    public class usersevice{

    public Userdao userdao = new UserDaoImpl();//非IOC

    public UserDao userdao;                           //IOC

    public void set(Uerdao userdao){

         this.userDao = userdao;

    }

    }

    我们在非IOC应用中使用userdao,是由自己主动来new一个实例。而IOC则是由外部容器在初始化的时候帮你注入userdao的实例。管理和维护这个userDao实例的权限交给了spring容器。这就是控制反转。

    IOC就是应用本身不依赖对象的创建和维护,而这些工作交给IOC容器来做,这样就把应用程序和对象解耦,控制权交给容器。

    AOP:面向切面编程,就是把各个模块需要用到相同的业务逻辑抽出来。然后封装成一个面。然后可以很灵活的切入到你的模块当中去。这个切入就用到了JDK的动态代理,三个重要概念,首先是目标对象,即需要切入的对象,然后是切入点,即哪些方法需要切入,然后是切入后做什么,即业务逻辑。

    日志、异常的处理、

    对于异常处理,日志功能,权限的检查,事务等都是贯穿到各个模块之中,因此进行AOP.

    转至:http://blog.sina.com.cn/s/blog_87c51db10101339r.html

  • 相关阅读:
    Java垃圾收集算法
    Java回收方法区中回收的类
    Android 聊天软件客户端
    Android 面试
    基于Android的简单聊天工具-服务器端
    Java多线程
    业务序号重排序
    Dubbo异步转同步
    Dubbo加权轮询负载均衡算法应用之推荐产品
    Linux文件句柄数配置
  • 原文地址:https://www.cnblogs.com/badoumi/p/5295045.html
Copyright © 2011-2022 走看看