`

Spring入门简介-IOC与AOP简单概述

阅读更多
Spring之IOC

  • 浅谈IOC
  • IOC理论的背景
  • 依赖注入(DI)
  • IOC的好处
  • IOC的通俗理解


浅谈IOC
IOC(Inversion of Control,控制反转)是spring的核心,贯穿始终。所谓IOC,对spring框架来说,就是由spring来控制对象的生命周期和对象间的依赖关系。

传统模式:对象间的依赖关系由对象自己控制,代码耦合度高。
IOC开发模式:对象间的依赖关系由spring容器来控制,解耦。

IOC理论的背景


DI,依赖注入
IOC还有一个名字,叫DI(Dependency Injection),所谓依赖注入,就是在IOC容器运行期间,动态的将某种依赖关系注入到对象中。所以,依赖注入和控制反转是从不同的角度描述的一件事情,就是指通过引入IOC容器,利用依赖关系注入的方式,实现对象间的解耦。

IOC的好处
IOC在编程过程中不会对业务对象构成很强的侵入性,使用IOC可以使对象具有更好的可实行性,复用性和可扩展性:
  • 解耦
  • 提升开发效率和代码质量
  • 统一标准,提高模块的复用
  • 模块具有热插拔性


IOC的通俗理解
IOC控制反转:创建对象的实例的控制权从代码中剥离到ioc容器,实际上就是配置文件或者注解来控制,侧重于原理。
DI依赖注入:说的是创建对象实例,对这个对象注入属性值或其他对象实例,侧重于实现。

Spring之AOP
  • 什么是AOP
  • AOP的存在价值
  • AOP的原理剖析
  • AOP的关键概念
  • AOP的通俗理解


什么是AOP
  • 基本概念
  • AOP与OOP的关系
  • AOP的主要功能
  • AOP的主要意图


AOP的存在价值
AOP专门用于处理系统中分布于各个模块中的交叉关注的问题,在JavaEE应用中,经常通过AOP来处理具有横切性质的系统级服务,如果事务管理,安全检查,日志记录,缓存,对象池管理等,AOP已经成为一种非常常用的解决方案。



AOP原理剖析
AOP代理其实是由AOP框架生成的一个代理对象,该对象可以作为目标对象使用,原理图如下:
(Aspect Oriented Programming)



AOP的关键概念
以下是官方文档所给出的AOP的关键概念的解释:
  • 切面 - Aspect
  • 连接点 - Join Point
  • 通知 - Advice
  • 切入点 - Point Cut
  • 引入 - Introduction
  • 目标对象 - Target Object
  • AOP代理 - AOP Proxy
  • 织入 - Weaving


AOP的通俗理解
AOP通俗的理解:
一个组件A,不关心其他常用的服务组件B,但是这个组件A使用组件B的时候,不是组件A自身去调用,而是通过配置等其他方式,比如Spring中可以通过xml配置文件。这样就使得A压根就不需要知道服务组件B是怎样的,爱存在不存在,爱怎么存在都与A无关。A只关心自己的业务逻辑,具体A使用B的时候,配置文件去做,与具体的A组件无关。
  • 大小: 17 KB
  • 大小: 9.6 KB
  • 大小: 20.4 KB
分享到:
评论

相关推荐

    Spring4讲义

    Spring4 ioc与aop概述spring技术,更有入门 案例,学习起来easy

    spring学习.rar

    介绍spring的部分内容,分别从 入门与概述、IOC、AOP与事务处理 这3个方面进行学习。

    Spring文档

    Spring文档 确实不错 1.spring概述 2.Spring的体系结构 3.Spring入门案例 4.IOC容器 5.Spring中的事件处理 6.Spring AOP 7.Spring的事务管理

    《精通Spring2.X企业应用开发详解》随书源码1-15章

    ======================================================================== <br>第1篇 概述 第1章 Spring概述 第2章 快速入门 第2篇 Spring核心技术 第3章 IoC容器概述 第4章 在IoC容器中...

    spring.net中文手册在线版

    Spring.NET以Java版的Spring框架为基础,将Spring.Java的核心概念与思想移植到了.NET平台上。 第一章 序言 第二章 简介 2.1.概述 2.2.背景 2.3.模块 2.4.许可证信息 2.5.支持 第三章 背景 3.1.控制反转 第...

    《精通Spring2.X企业应用开发详解》20-23

    ======================================================================== <br>第1篇 概述 第1章 Spring概述 第2章 快速入门 第2篇 Spring核心技术 第3章 IoC容器概述 第4章 在IoC容器中...

    《精通Spring2.X企业应用开发详解》16-19章

    ======================================================================== <br>第1篇 概述 第1章 Spring概述 第2章 快速入门 第2篇 Spring核心技术 第3章 IoC容器概述 第4章 在IoC容器中...

    Spring.3.x企业应用开发实战(完整版).part2

    6.1 AOP概述 6.1.1 AOP到底是什么 6.1.2 AOP术语 6.1.3 AOP的实现者 6.2 基础知识 6.2.1 带有横切逻辑的实例 6.2.2 JDK动态代理 6.2.3 CGLib动态代理 6.2.4 AOP联盟 6.2.5 代理知识小结 6.3 创建增强类 6.3.1 增强...

    Spring3.x企业应用开发实战(完整版) part1

    6.1 AOP概述 6.1.1 AOP到底是什么 6.1.2 AOP术语 6.1.3 AOP的实现者 6.2 基础知识 6.2.1 带有横切逻辑的实例 6.2.2 JDK动态代理 6.2.3 CGLib动态代理 6.2.4 AOP联盟 6.2.5 代理知识小结 6.3 创建增强类 6.3.1 增强...

    struts + spring +hibernate

    第1章 Web应用的发展.ppt 第2章 学习JSP.ppt 第3章 Struts2概述.ppt 第4章 Struts2入门.ppt : : 第9章 Hibernate概述.ppt ...第18章 Spring入门.ppt 第19章 Spring的IoC.ppt 第20章 Spring的AOP.ppt : :

    如果你读完这篇文章,恭喜你!你的Spring入门了!

    第一篇:Spring框架的概述以及Spring中基于XML的IOC配置 1.spring的概述 spring是什么 Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的...

    JAVA从入门到精通,SPRINGboot

    包括Java Web应用开发概述、HTML与CSS网页开发基础、JavaScript脚本语言、搭建开发环境、JSP基本语法、JSP内置对象、JavaBean技术、Servlet技术、过滤器和监听器、Java Web的数据库操作、EL(表达式语言)、JSTL标签...

    Java语言基础下载

    目录 第一章:Java开始 1 学习目标 1 Java历史 2 Java技术概述 3 Java技术的优点 3 Java虚拟机 4 类加载器 6 Windows环境变量 8 内容总结 13 独立实践 14 ...Spring与Hibernate整合 721 独立实践 724

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    主要包括Java Web开发环境、JSP语法、JSP内置对象、Java Bean技术、Servlet技术、EL与JSTL标签库、数据库应用开发、初识Struts2基础、揭密Struts2高级技术、Hib锄劬e技术入门、Hibernate高级应用、Spring核心之IoC、...

    asp.net知识库

    .net 2.0 访问Oracle --与Sql Server的差异,注意事项,常见异常 Ado.net 与NHibernate的关系? 动态创建数据库 SQL Server数据库安全规划全攻略 .net通用数据库访问组件SQL Artisan应用简介1 在Framework1.0下...

    spring学习笔记

    Spring的Ioc Spring的AOP , AspectJ Spring的事务管理 , 三大框架的整合 目录 1.1 Spring 框架学习路线:..........................................................................................................

    Java/JavaEE 学习笔记

    第三章 Spring AOP(面向切面编程)..........351 第四章 Spring中的数据访问..........353 CVS学习笔记.................355 PL/SQL学习笔记............358 第一章 PL/SQL概述........................358 第二章 ...

    J2EE学习笔记(J2ee初学者必备手册)

    第三章 Spring AOP(面向切面编程)..........351 第四章 Spring中的数据访问..........353 CVS学习笔记.................355 PL/SQL学习笔记............358 第一章 PL/SQL概述........................358 第二章 PL...

Global site tag (gtag.js) - Google Analytics