* spring是什么?
他是一個容器(context,opplicotion),里面裝的是對象
這個容器會幫助我們創建對象.
* 以后需要做什么?
告訴spring容器如何創造一個對象,
如何從spring容器中取出需要的對象
*從spring容器中取出的對象,就不一定是浴室的對象,
而是被spring增強的對象
*Bean:是從spring容器中取出的對象叫做bean
實體類的包名叫Bean,是從spring這里引申過來的
實體類的包有多種命名方式:entity,bean,domain
創建book類
默認情況下,由Spring 容器中創建的都是單例模式,
也就是說,不論容器中取出幾次,取出的都是一個對象
如果修改此行為,那么需要為該bean設置一個scope屬性,值為prototype
這樣的話,每次從容器中取出的對象都是單獨的
初建一個對象的同時,把該對象的屬性進行賦值,能賦值的屬性的前提,是該屬性有setter方法,或者該屬性是public的
通過構造方法給對象里面的屬性賦值
為對象中的Map的屬性賦值 第一種 方式
為對象中的Map的屬性賦值 第二種 方式
給分類對象屬性賦值
創建Spring容器對象,通過加載配置文件創建出來的
ClassPathXmlApplicationContext 加載配置文件
取出定義的bean
第一種方式
第二種方式
從spring容器中取出BookBean類型的對象
能取得前提是容器中只有一個該類型的bean才行
BookBean bean = ctx.getBean(BookBean.class);
同時根據id和類型取出id
從一個容器中取出一個對象,賦值給變量的過程叫做:裝配
上面大致有兩種裝配方式,根據id裝配和根據類型裝配
spring的3大核心技術
DI 依賴注入
IOC 控制反轉
AOP 面向切面編程
開發過程中實體類不會由spring 管理
實體類不要聲明到成員變量上