-
自定義的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() 在特定的情況下,可以?調用私有的構造函數。?查看全部 -
傳統創建對象的方式高耦合性
查看全部 -
控制? 反轉? 的含義
查看全部
舉報