把對(duì)象的創(chuàng)建交給Spring進(jìn)行管理
-
IOC操作兩部分:
IOC的配置文件方式
IOC的注解方式
IOC的底層原理
-
IOC底層原理使用技術(shù)
Xml配置文件
dom4j解決 xml
工廠設(shè)計(jì)模式
反射
public class UserServlet{
?
}
第一步 創(chuàng)建XML配置文件赖歌,配置要?jiǎng)?chuàng)建的對(duì)象類
<bean id = "userService" class = "com.lllll.UserService"/>
?
第二部 創(chuàng)建工廠類,使用dom4j解析配置文件+反射
//返回UserService對(duì)象的方法
public static UserService getService(){
//使用dom4j解析xml文件
//根據(jù)id值 userService 慎宾,得到id值對(duì)應(yīng)的class屬性值
String classValue = “class屬性值”;
//使用反射創(chuàng)建類對(duì)象
Class clazz = Class.forName(classValue);
//創(chuàng)建類對(duì)象
UserService service = clazz.newInstance();
return service;
}</pre>
Spring 的 bean 管理 (xml 方式)
Bean 的實(shí)例化的方式
在spring里面通過(guò)配置文件創(chuàng)建對(duì)象
-
bean實(shí)例化三種方式實(shí)現(xiàn)
-
使用類的無(wú)參數(shù)構(gòu)造創(chuàng)建(重點(diǎn))
- 類里面沒(méi)有無(wú)參數(shù)的構(gòu)造统锤,會(huì)出現(xiàn)異常(有參構(gòu)造在岂,參數(shù)需要賦默認(rèn)值即可)
-
使用靜態(tài)工廠創(chuàng)建
- 創(chuàng)建靜態(tài)工廠绍弟,返回類對(duì)象
-
使用實(shí)例工廠創(chuàng)建
- 創(chuàng)建不是靜態(tài)的方法锐锣。返回類對(duì)象
-
Bean 標(biāo)簽常用屬性
id :起名腌闯,id屬性值,不能包含特殊符號(hào)雕憔,根據(jù)id值得到配置對(duì)象
class:創(chuàng)建對(duì)象的所在類的全路徑
name:和id屬性一致姿骏,為了拿到配置對(duì)象,name可以包含符號(hào)
-
scope:Bean的作用范圍
singleton:默認(rèn)值斤彼,單例的
prototype:多例
request:創(chuàng)建對(duì)象把對(duì)象放到request域里面
session:創(chuàng)建對(duì)象把對(duì)象放到session域里面
globalSession:創(chuàng)建對(duì)象把對(duì)象放到globalSession里面
屬性注入
創(chuàng)建對(duì)象時(shí)分瘦,向類里面屬性里面設(shè)置值
屬性注入的方式介紹(三種方式)