-
自定義的IoC容器測試代碼:
IoC創造類和功能約定:

?


2. 反射方法實例化bean.
?


測試:

回顧總結:
好處:
查看全部 -

第一種:通過構造方法注入Bean
#<bean>標簽管理class對象。
#bean的構造方法參數標簽 constructor-arg。
#index 表示構造方法的第幾個參數。
#name 表示構造方法的參數名。
#type 表示對應的參數類型。
#value 表示為參數提供賦值,一般用于String等簡單常用對象。
#ref 表示為參數提供賦值,一般是復雜點的依賴其它 class的對象(取bean的id)。
注意:只要通過index、name、type的組合明確表示出構造函數的那一個參數即可,
不一定全用,只用index也可以。
<bean class="com.imooc.spring.ioc.class06.Bean">
<constructor-arg ?index="0" name="anotherBean"
type="com.imooc.spring.ioc.class06.AnotherBean">
</constructor-arg>?
</bean>


通過構造方法注入Bean,輸出結果:
成功的給屬性賦值。?
?
總結:
第一種:構造方法注入bean

第二種:通過set方法注入Bean

第三種:集合類型Bean注入
List和Set?

Map和Propertyes

第四種:注入null值
??第五點:注入內部Bean
查看全部 -
實例化Bean的方法總結:


Spring 實例化Bean的方法:


Bean的別名


別名輸出的都是同一個Bean實例
查看全部 -
什么是IoC
英文全程:Inversion of Control?


為什么要使用IoC
查看全部 -
課程內容:IoC部分

了解xml配置的繁瑣,才能體會使用注解的方便。
課程目的:
查看全部 -
Spring入門課程目錄,分三大部分
查看全部 -
Java Web發展的六個階段

查看全部 -
Java Web發展史(一)
查看全部 -
Java Web發展史
查看全部 -
老方法

注解:

簡化@Bean

?@Configuration用于定義配置類,可替換xml配置文件,被注解的類內部包含有一個或多個被@Bean注解的方法,這些方法將會被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext類進行掃描,并用于構建bean定義,初始化Spring容器
ApplicationContext?context=new?AnnotationConfigApplicationContext(類名.class); Bean1?bean1=context?.getBean("bean",Bean1.class);查看全部 -
Class<T>在實例化的時候,T要替換成具體類
Class<?>它是個通配泛型,?可以代表任何類型查看全部 -
反射? ?類本身也是對象? 是Class類的對象
獲取類的兩種方式
Class?clazz?=?Person.class; Class??clazz??=??Class.forName("包名.Person");???(包名+類名)1.建對象??
Constructor?cons=clazz.getConstructor(String.class,int.class); Person?p=cons.newInstance("Tom",12);????//可以傳數組2.調用 屬性,方法
Field age=clazz.getDeclaredField(....);? (參數忘了)
age.set(p,10);
Method show =clazz.getDeclaredMethod(......);? ?(參數忘了)
show.invoke(p);
查看全部 -
Class.newInstance() 只能夠調用?無參的構造函數,即默認的構造函數;?
Constructor.newInstance() 可以根據傳入的參數,調用?任意構造構造函數。?Class.newInstance() 要求被調用的構造函數是可見的,也即必須是?public類型的;?
Constructor.newInstance() 在特定的情況下,可以?調用私有的構造函數。?查看全部 -
傳統創建對象的方式高耦合性


查看全部 -
控制? 反轉? 的含義
查看全部
舉報