Java Spring數(shù)據(jù)單元配置過程解析
基本原理 - 容器和bean
在Spring中,那些組成你應(yīng)用程序的主體(backbone)及由Spring IoC容器所管理的對(duì)象,被稱之為bean。 簡(jiǎn)單地講,bean就是由Spring容器初始化、裝配及管理的對(duì)象,除此之外,bean就與應(yīng)用程序中的其他對(duì)象沒有什么區(qū)別了。
也就是說,其實(shí)spring 就是在加載配置文件beans.xml的時(shí)候,通過反射機(jī)制,去實(shí)例化<bean>標(biāo)簽里面的類的過程。這里可以通過在類的默認(rèn)無參構(gòu)造方法中寫點(diǎn)東西判斷出來。
1. 配置元數(shù)據(jù)
基于XML的配置元數(shù)據(jù)的基本結(jié)構(gòu):beans.xml
<?xml version='1.0' encoding='UTF-8'?><beans xmlns='http://www.springframework.org/schema/beans' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd'> <bean class='...'> <!-- collaborators and configuration for this bean go here --> </bean> <bean class='...'> <!-- collaborators and configuration for this bean go here --> </bean> <!-- 更多的bean的時(shí)候 在引用的xml文件一定是要帶spring dtd頭的文件--> <import resource='services.xml'/></beans>
services.xml
在配置文件里面命名其實(shí)id 和name都是一樣的
<?xml version='1.0' encoding='UTF-8'?><beans xmlns='http://www.springframework.org/schema/beans' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:context='http://www.springframework.org/schema/context' xmlns:tx='http://www.springframework.org/schema/tx' xsi:schemaLocation='http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd'> <bean name='userService' class='com.sun.service.UserService'><property name='name'> <value>sunxin</value></property></bean></beans>
2. 實(shí)例化容器
ApplicationContext context = new ClassPathXmlApplicationContext(new String[] {'beans.xml'});
3. bean的別名
<!--name指向的是已經(jīng)存在該id的bean,alias是給給該bean命的別名--><alias name='userService' alias='user'/>
調(diào)用可以通過:
UserService us = (UserService) app.getBean('user');
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. XHTML 1.0:標(biāo)記新的開端2. html清除浮動(dòng)的6種方法示例3. ASP腳本組件實(shí)現(xiàn)服務(wù)器重啟4. 低版本IE正常運(yùn)行HTML5+CSS3網(wǎng)站的3種解決方案5. xml中的空格之完全解說6. ASP基礎(chǔ)入門第三篇(ASP腳本基礎(chǔ))7. 怎樣才能用js生成xmldom對(duì)象,并且在firefox中也實(shí)現(xiàn)xml數(shù)據(jù)島?8. css進(jìn)階學(xué)習(xí) 選擇符9. CSS3中Transition屬性詳解以及示例分享10. 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法
