Spring基礎使用(一)--------IOC、Bean的XML方式
1、xml檔案基礎格式:
2、初始化容器方法:
- 檔案的絕對路徑:
FileSystemXmlApplicationContext context1=new FileSystemXmlApplicationContext("C:/configuration.xml")
- Classpath載入
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("configuration.xml");
1、Bean注入的2種方式:
- set方法注入:透過set方法進行注入。
- 構造方法注入:透過構造方法進行注入
1、Bean的作用域
- singleton:單例模式
- prototype:原型模式
- request:當前request內有效
- session:當前session內有效
- global session:當前global session內有效
2、Bean初始化和銷燬方法
初始化方法:
- 實現
InitializingBean
介面,重寫afterPropertiesSet()
方法 - 在xml檔案中,bean定義的地方指定
init-method
銷燬方法:
- 實現
DisposableBean
介面,重寫destroy()
方法 - 在xml檔案中,bean定義的地方指定
destroy-method
全域性初始化和銷燬:
透過default-init-method
和default-destroy-method
關鍵字進行指定。
3、Aware
如果類實現了ApplicationContextAware
介面,則需要重寫介面中的setApplicationContext
方法,在IOC容器進行初始化之後,會自動呼叫setApplicationContext
方法。setApplicationContext
方法的引數就是IOC容器物件本身。
如果類實現了BeanNameAware
介面,則需要重寫介面中的setBeanName
方法,在Bean例項化的時候,會自動呼叫setBeanName
方法。
還有其他的Aware介面:
-
BeanFactoryAware
:獲得當前bean Factory,從而呼叫容器的服務 -
MessageSourceAware
:得到message source從而得到文字資訊 -
ApplicationEventPublisherAware
:應用時間釋出器,用於釋出事件 -
ResourceLoaderAware
:獲取資源載入器,可以獲得外部資原始檔
4、Bean的自動裝配(4種型別)
在xml檔案中,透過default-autowire
欄位進行指定裝配模式。而不需要在bean中使用property
或者constructor-arg
。
- No:不做動作
- byName:根據類的成員的名稱,從容器中進行匹配並裝配。需要set函式支援。
- byType:根據類的成員的型別,從容器中進行匹配並裝配。需要set函式支援。如果存在多個同型別物件,則丟擲異常。
- Constructor:根據類的成員的型別,從容器中進行匹配並裝配。需要建構函式支援。
5、Resources:實現對底層資源的訪問
Spring內建6種Resource型別:UrlResource,ClassPathResource,FileSystemResource,ServletContextResource,InputStreamResource,ByteArrayResource
- UrlResource:URL對應的資源
- ClassPathResource:類路徑下的資源
- FileSystemResource:檔案系統資源
- ServletContextResource:ServletContext對應資源
- InputStreamResource:輸入流資源
- ByteArrayResource:位元組陣列資源
8、ResourceLoader介面:資源載入器
ResourceLoader
是一個用於資源載入的介面。Spring中的ApplicationContext
實現了ResourceLoader
介面,所以可以透過ApplicationContext
進行實際資源的載入。
載入方式有4種:
- classpath字首:從classpath中獲取對應的資原始檔
- file字首:從檔案系統中獲取對應的資原始檔,需要絕對路徑
- http字首:從網路中獲取對應的資原始檔
- 無字首:從
ApplicationContext
所在目錄中獲取對應的資原始檔
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1600/viewspace-2800335/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Spring基礎之 IOC九種bean宣告方式SpringBean
- Spring系列:基於XML的方式構建IOCSpringXML
- Spring基於XML方式的使用SpringXML
- Spring IOC 一——Spring容器裝配BeanSpringBean
- Spring基礎(Bean)SpringBean
- Spring IOC XML配置SpringXML
- Spring IoC bean 的建立(上)SpringBean
- Spring基礎使用(三)-------XML定義AOP的使用SpringXML
- 4、Spring IOC容器 Bean物件例項化的3種方式SpringBean物件
- spring上 -基於Xml配置bean筆記SpringXMLBean筆記
- Spring IoC bean 的初始化SpringBean
- Spring學習日記01_IOC_xml的三種注入方式SpringXML
- Spring中基於XML方式的AOP操作SpringXML
- Spring AOP基於xml的方式實現SpringXML
- Java之Spring基礎與IoCJavaSpring
- 【Java面試】Spring中有哪些方式可以把Bean注入到IOC容器?Java面試SpringBean
- 死磕Spring之IoC篇 - Bean 的“前身”SpringBean
- Spring基礎 - Spring核心之控制反轉(IOC)Spring
- 【spring 原始碼】IOC 之bean例項的建立Spring原始碼Bean
- Spring注入Bean的幾種方式SpringBean
- spring原始碼深度解析— IOC 之 bean 建立Spring原始碼Bean
- day03-Spring管理Bean-IOC-01SpringBean
- day06-Spring管理Bean-IOC-04SpringBean
- day05-Spring管理Bean-IOC-03SpringBean
- day07-Spring管理Bean-IOC-05SpringBean
- Spring(十二):IOC容器中Bean的生命週期方法SpringBean
- 淺析spring——IOC 之 分析 Bean 的生命週期SpringBean
- 死磕Spring之IoC篇 - Bean 的建立過程SpringBean
- Spring+Mybatis(一)無mapper.xml方式SpringMyBatisAPPXML
- spring-IOC容器原始碼分析(一)bean初始化流程Spring原始碼Bean
- Spring Ioc原始碼分析系列--Bean例項化過程(一)Spring原始碼Bean
- spring中bean.xml的http://www.springframework.org/schema/bean報錯SpringBeanXMLHTTPFramework
- spring註冊bean的幾種方式SpringBean
- Spring中bean的四種注入方式SpringBean
- Spring Bean的3種裝配方式SpringBean
- spring bean 擴充套件方式SpringBean套件
- 聊聊 Spring 的 XML Schema 擴充套件機制的使用方式SpringXML套件
- spring原始碼深度解析— IOC 之 bean 的初始化Spring原始碼Bean