一:什麼是Spring框架?java
spring是一個分層的javase/EEfull-stack(一站式)輕量級的java開源框架。是爲了解決企業開發的複雜性而建立的。框架的主要優點是分層架構,Spring的核心是控制反轉(IOC)和麪向切面(AOP)。web
二.學習Spring的好處?spring
主要就是方便解耦,簡化開發編程
Spring就像一個工廠,能夠將全部對象建立和依賴關係維護,都交給Spring管理。架構
AOP編程的支持框架
Spring提供面向切面編程,能夠方便的實現對程序進行權限攔截、運行監控等功能。學習
聲明式事務的支持測試
只須要經過配置就能夠來完成對事務的管理,而無需手動編程。對象
方便程序的測試blog
spring對Junit4支持,能夠經過註解方式方便的測試Spring的程序。
方便集成各類優秀框架
Spring內部對各類優秀框架都支持。如struts,Hibernate,Mybatis等等
下降JEEAPI的使用難度
對javaee開發中難用的一些API(javaMail等等),都提供的封裝,使使用這些API難度下降。
三.IOC的基本概述和原理
IOC(Inversion of Control)控制反轉。指的是將對象的建立權反轉交給Spring管理,是爲了實現程序的解耦。
傳統web開發
基於上述,IOC就是基於工廠模式+配置文件+反射來實現