spring
1、第一天
1.spring是乙個開源框架,主要優勢之一是其分層架構,分層架構允許使用者選擇使用哪乙個元件.
spring的核心是ioc(控制反轉)和aop(面向切面)。
2.ioc:建立類的物件的時候,使用ioc實現物件建立,通過配置檔案方式建立物件。
底層原理技術:xml配置檔案;dom4j解析xml檔案;工廠模式;反射
aop:不通過修改源**方式增強類裡面的方法。
3.spring框架需要的包:beans;core;context;spel;commons-logging-1.2; log4j-1.2.16;
4.配置檔案:bean.xml 放到src下。
約束內容:
<?xml version="1.0" encoding="utf-8"?>
5.spring的bean管理:(1)建立物件(bean例項化)
(2)設定類裡面屬性值
6.類的例項化:
(1)使用類的無參構造:
(2)使用靜態工廠建立:
(3)使用例項工廠建立
7.scope屬性id屬性:根據id屬性值獲取物件; 在乙個spring配置檔案中,可以有多個bean標籤,但是bean標籤id屬性值不同
class屬性類的全路徑
scope屬性
(1)主要作用:配置建立物件是單例項還是多例項物件
(2)屬性值: 預設值,singleton,表示單例項物件; prototype,表示多例項物件; action是多例項物件
request:把建立物件放到request裡面
session:把建立物件放到session裡面
globalsession:把建立物件放到globalsession裡面
8.屬性注入:
(1)使用有參構造注入
(2)使用set方法注入:
(3)注入物件型別屬性:
9.test方法;
@test
public void testuserdao()
二、第二天
spring
1 spring分模組配置開發
(1)載入配置檔案的時候,載入多個。
(2)在配置檔案中一如其它配置檔案
2 注入複雜型別屬性(會用)
歐陽娜娜
沈月劉惜君
張三丰李小龍喬峰
3 spring的bean管理(註解)(重點)
使用註解方式實現建立物件和注入屬性
什麼是註解?
(1)註解**中特殊標記
(2)寫法: @註解名稱(屬性名稱1=屬性值1, 屬性名稱2=屬性值2)
(3)註解可以使用類上面、使用方法上面、使用在屬性上面
(4)為什麼使用註解:替代配置檔案實現一部分功能,簡化配置
3.1jar包
3.2配置檔案
<?xml version="1.0" encoding="utf-8"?>
3.3spring註解建立物件
與@component功能相同的註解: //value可以省略
@controller :web層
@service:業務層
@repository:持久層
例子:(1)
bean包下:
@component("user") //建立例項物件
//@scope(value="prototype") 單例和多例設定
public class user
}
test包:
@test
public void test_1()
(2)物件型別屬性
@component("people")
public class people
@test
public void test_2()
3.4配置檔案和註解混合使用
建立物件使用配置檔案
注入屬性使用註解
4 aop概念和原理
4.1 aop概述:aspect oriented programming面向切面(方面)程式設計,不通過修改源**方式實現功能擴充套件
aop底層原理:橫向抽取機制,動態**實現
4.2aop操作相關術語
切入點:實際增強的方法
增強/通知;增強乙個類裡面的方法,寫增強的邏輯稱為 通知/通知
切面:在方法上面寫增強邏輯,應用到切入點的過程。
4.3:通知型別
前置通知:
後置通知:
環繞通知:
異常通知:
最終通知:
4.5 aopjar包
4.6使用表示式配置切入點:
execution(* cn.itcast.userdao.update(..)) //增強該方法
execution(* cn.itcast.userdao.*(..)) //增強該類的所有方法
execution(* *.*(..)) //增強所有
4.7例項:
bean.xml:
原來的類:
public class user
}
增強類:
public class myuser
//環繞需要這樣寫
public void round(proceedingjoinpoint p) throws throwable
}
test方法:
public class testdemo
}
結果:
spring學習筆記
spring中兩個十分重要的概念 ioc di aop 1.ioc di inverse of control dependence injection ioc 控制反轉,看起來比較牛b,說起來十分簡單。就是不使用傳統的將類的依賴關係用硬編碼來維護的方式,而是讓容器來管理類之間的依賴,依賴關係在全在...
Spring 學習筆記
實現ioc的兩種方式 dependency injection 和 service locator 關於依賴注入 依賴注入指的是,當您在a物件內部需要b物件的某個功能時,a就依賴於b,您可以直接在a內部例項化b,但日後要修改就麻煩些。如果您不直接在a內部例項化b,而是通過ioc將乙個b例項從外部設定...
spring學習筆記
spring的bean的生命週期 只用反射機制通過class路徑獲得class型別,呼叫預設建構函式例項化乙個物件。呼叫bean的property設定物件的屬性 set方法 如果bean的類實現了beannameaware介面,那麼還會呼叫setbeanname方法 如果bean的類實現了beanf...