Spring 学习(一)Spring的概念和IOC的原理

工作中用Spring有一段时间了,这边打算开始总结下Spring框架的相关知识。

首先,介绍下Spring,

1.Spring是一个开源的轻量级框架。

2.它核心的主要是两个部分:

一个是AOP,也就是面向切面编程:也就是但我们扩展功能的时候不是直接通过修改源代码实现。

另一个是IOC,也就是控制反转。

看了一堆解释IOC都比较抽象。我这边通俗的说明下:比方说有一个类,在类里面有方法(不是静态的方法),调用类里面的方法,创建类的对象。使用对象调用方法,创建类的对象,需要用到new 出来对象。而IOC就是把对象的创建不通过new的方式实现,而是交给Spring配置来创建对象。

3.spring是一站式框架
(1)spring在javaEE三层结构中,每一层提供不同的解决技术
web层:springMVC
service层:spring的IOC
DAO层:spring的jdbcTemplate

spring ioc 操作
1.把对象的创建交给spring进行管理
2.ioc操作两部分:
(1)ioc的配置文件方式
(2)ioc的注解方式


IOC的原理是:(1)用xml配置文件(2)dom4j解析xml (3)工厂设计模式 (4)反射代码

为了解释IOC,原理我这边举一个例子来说明:

如果有一个User类,里面有一个add方法,我们在servlet里面调用这个方法的话,最开始的做法是,new一个User 对象来调用,但这种方式的缺陷是代码的耦合度太高。

于是我们中间可以通过工厂模式来进行解耦合操作。例如下图所示,但这样servlet与工厂类又耦合度。


所以我们引入了IOC,


通过IOC,来降低类之间的耦合度。


猜你喜欢

转载自blog.csdn.net/harryptter/article/details/79797224