1. 程式人生 > >Spring框架基礎(一)基本介紹

Spring框架基礎(一)基本介紹

spring 框架的基本核心構成

IOC  	Inversion 0f Control 控制反轉  是Spring框架的核心
DAO	資料訪問物件模組  Spring  對JDBC訪問資料庫的封裝
MVC 	是Spring對MVC架構以及web部分的支援
AOP	面向切面程式設計
ORM 	物件關係對映	mybatis (訪問資料庫面向物件化)
JEE		java的資訊服務 遠端呼叫 郵件等服務

什麼是IOC

Inversion Of Control  控制反轉:意思是 程式設計師用到某個物件時 ,由原來的new的方式變成了由容器來進行建立和管理以及維護元件的關係。這樣可以大大降低元件之間的耦合度。

Spring 容器

任何的java類 都可以在容器建立物件、管理物件 以及維護物件和其他元件的關係
Spring 	容器實現了IOC和AOP機制
Spring 	容器的型別	ApplicationContext和BeanFctory 型別	 其中ApplicationContext是BeanFoctory的子介面

Spring容器的使用步驟

1、建立一個專案 匯入Jar包 並拷貝Spring容器對應的配置檔案到Src下
2、在Spring 容器對應的配置檔案中 寫需要建立的元件配置
<bean id="元件引用名“ class=”包名。類名“></bean>
3、寫一個測試類 建立Spring容器 並關聯容器對應的配置檔案
ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");
 Date date = (Date)app.getBean("date");
XdlEmp emp = (XdlEmp)app.getBean("emp",XdlEmp.class);

Spring 容器建立物件的三種方式

1、構造器方式例項化
<bean   id="物件名"  class="包名.型別“  [scope="prototype"]></bean>
[scope="prototype"]取消預設單例模式狀態
2、靜態工廠方法例項化 	
<bean id ="物件識別符號"  class= “包名.型別名” factory_method="例項方法名“></bean	
3、例項工廠方法例項化 
<bean	id="物件識別符號“    class="包名.目標類” factory-method="例項方法名 "  factory-bean="工廠物件的Id"></bean>

Spring 中物件的作用域

在Spring容器中 一個物件預設的作用域是單例的,通過bean標記中增加scope屬性 可以指定物件的作用域 指定的值有 singleton   prototype 其他值 web 部分才涉及

bean物件的初始化和銷燬

Spring容器中bean物件的初始化和銷燬: 當元件在容器中建立/關閉完成之後,就會走初始化方法/銷燬方法。
Spring提供了兩種初始化物件/銷燬物件的手段: 第一  實在beans標記中加default-init-method=“初始化/銷燬方法名”由於這樣影響的範圍比較大 
所以一個型別中如果沒有對應的初始化 方法 也不會報錯。第二 中 手段 是在 bean標記中加init-method=“初始化方法名”/destroy-method="銷燬方法名" 
 由於這樣指定的範圍比較精準   所以型別中沒有對應的初始化/銷燬方法會把報錯

單例物件 預設是容器啟動時 例項化 可以通過lazy- init=“ture” 推遲bean物件的例項化,稱為bean的延遲例項化 ApplicationContext app= new ClassPathXmlApplicationContext(ApplicationContext.xml); Card card = app.getBean(“card”,Card.class);