1.簡介:
JavaBean用來充當Java Web應用的模型組件。
JSP和Servlet可以調用JavaBean來完成功能強大的業務邏輯操作。
J2EE中最流行的框架。
核心:IOC,AOP
Spring是一個輕量級控制反轉(IoC)和面向切面(AOP)的容器框架,它主要是為了解決企業應用開發的復雜性而誕生。
目的:解決企業應用開發的復雜性
功能:使用基本的JavaBean代替EJB
范圍:任何Java應用
存在原因:
- 定位的領域是許多其他流行的framework沒有的
- Spring是全面和模塊化的
- 它的設計從底部幫助你編寫易于測試的代碼
- spring是潛在的一站式解決方案
Spring的優點:
- 低侵入式的設計,代碼污染極低
- Write Once, Run Anywhere
- DI有效的降低了耦合度
- AOP提供了通用任務的集中管理
- ORM和DAO簡化了對數據庫的訪問
- 高度的開放性,并不強制(可選擇一部分)
Spring的有點給開發者帶來了好處:
- 可以有效組織中間層對象
- 使用同一的配置文件
- 促進良好的編程習慣,減少編程代價
- 易于單元測試
- 使EJB成為一種備選
- 為數據存取提供了一種可行方案
Spring特點:
- 方便解耦,簡化開發
- AOP編程的支持
- 聲明式失誤的支持
- 方便程序的測試
- 方便集成各種優秀框架
- 降低了JavaEE API的使用難度
- Spring的源碼是經典的學習范例
Spring的核心模塊:
- 核心容器(Spring Core)
- 應用上下文(Spring Context)
- AOP模塊(Spring AOP)
- JDBC和DAO模塊(Spring DAO)
5.對象實體映射(Spring ORM) - Web模塊(Spring Web)
- MVC模塊(Spring Web MVC)
2.Spring 之 IoC
目標:
1)淺談IoC
2)IoC理論的背景
3)依賴注入(DI)
4)IoC的好處
5)IoC的通俗理解
IoC簡介:
IoC(Inversion of Control, 控制反轉)是spring的核心,貫穿始終。所謂IoC,對于Spring框架來說,就是由spring來負責控制對象的生命周期和對象間關系。
傳統開發模式:對象之間相互依賴
IoC開發模式:IoC容器安排對象之間的依賴
3.Bean創建的細節
<bean id="user" class="com.ypd.a.entity.User" scope="singleton">
</bean>
scope
默認就是singlone,單例。
可以不寫scope=“singlon”
scope="singlon" 默認值。單例。 【service/dao/工具類】 在啟動(容器初始化之前),就創建。
scope="prototype" 多例。 【Action對象】 在用到對象的時候再創建對象。
lazy-init="true" 懶加載。 默認是false.不延遲創建,即在啟動時候就創建。延遲初始化,在用到的對象都配置在這里。只對singleton單例有效。
創建對象后,初始化/銷毀
init_method="init_xxx" 【對應對象的init_xxx方法】在對象創建之后執行。
destory_method="destory_xxx" 【對應對象的destory_xxx方法】