前端JavaScript 常見的報錯及異常捕獲
阿新 • • 發佈:2021-07-28
1.Spring框架概述
- Spring是輕量級的開源的JavaEE框架
- Spring可以解決企業應用開發的複雜性
- Spring框架兩個核心部分: IOC,Aop
- IOC: "控制反轉",把建立物件的過程交給Spring給管理(例項化)
- Aop: "面向切面",在不修改原始碼的情況下進行功能的新增/增強
- Spring特點
- 方便解耦,簡化開發
- Aop程式設計支援
- 方便程式測試
- 方便整合各種優秀框架
- 方便進行事務操作
- 降低API開發難度(封裝性)
- Spring原始碼經典學習案例
2.IOC容器
1.IOC(概念和原理)
1.IOC(控制反轉)
- 通過控制反轉,物件在建立的時候,由一個調控系統內所有物件的外界實體將其所依賴的物件的引用傳遞給它.(依賴注入到物件中)
- 控制反轉: 把物件建立和物件之間呼叫的過程交給Spring進行管理
- 目的: 降低耦合度
- 入門案例即為IOC的實現
2.IOC底層原理
- xml解析,工廠模式,反射
- 反射:得到類的位元組碼檔案
eg.呼叫類中方法:(A中execute方法呼叫B中add方法)
//原始步驟即為在類中方法建立對應方法的例項類然後從例項類中呼叫方法
//耦合度太高(牽一髮而動全身)
class A{
execute(){
B b = new B();
b.add();
}
}
class B{
add(){
...;
}
}
解決方案:1.工廠模式(借用"工廠"呼叫,降低耦合度)
但仍存在工廠類,仍有較高耦合度.
最終目的就在於將耦合度降低到最低限度.
//建立工廠類
class Factory{
public static B getB(){
return new B();
}
}
//A中呼叫
class A{
execute(){
B b = Factory.getB();
b.add();
}
}
解決方案:2.IOC過程(進一步降低耦合度)
- xml配置檔案,配置建立的物件(xml解析)
eg.
\<bean id='b' class="com.xx.B">\</bean>
- 有A類和B類,建立工廠類,在內實現new操作
eg.
//建立工廠類 class Factory{ public static B getB(){ String classValue = class屬性值; //1.xml解析 Class zz = Class.forName(classValue); return (B)zz.newInstance(); //2.通過反射建立物件 } }
*2.IOC介面(BeeanFactory)
- IOC思想基於IOC容器完成,IOC容器底層就是物件工廠
- Spring提供IOC容器實現的兩種方法:(兩個重要介面)
-
BeanFactory: IOC容器基本實現方式,是Spring內部的使用介面,不提供開發人員進行使用.
載入配置檔案時不會建立物件,只有在獲取/使用時才去建立物件. -
ApplicationContext: BeanFactory的子介面,提供更多更強大的功能,一般由開發人員使用.
載入配置檔案時就會把配置檔案中的物件進行建立(better choice,耗時耗資源的過程交給伺服器進行,直接呼叫即可)
- ApplicationContext介面的一些實現類
-
FileSystemXmlApplicationContext: 對應本地檔案的路徑
-
ClassPathXmlApplicationContext: 對應類路徑(包路徑)