![](/img/trans.png)
[英]Some doubts about how exactly work the XML constructor injection Spring configuration?
[英]Some doubts about Spring namespace into XML configuration file. How exactly works?
我在Spring剛接觸新手,我有點懷疑將命名空間的概念與XML配置文件相關聯。
因此,例如,在我正在處理的項目的root-context.xml文件中,就有以下定義:
<jee:jndi-lookup jndi-name="java:jboss/datasources/myDbDS" id="datasource" expected-type="javax.sql.DataSource" />
具有通過以下方式在bean外部容器中指定的jee namepace的代碼:
xmlns:jee="http://www.springframework.org/schema/jee"
現在,我的疑問是,這個具有id =“ datasource”的定義到底是什么? 這個:
<jee:jndi-lookup jndi-name="java:jboss/datasources/myDbDS" id="datasource" expected-type="javax.sql.DataSource" />
它是Spring的經典bean,具有特定的名稱空間,因為它屬於bean的特定域(具有特定的目的)還是什么?
如春季文檔中所述:
jee標記處理與Java EE(Java企業版)相關的配置問題,例如查找JNDI對象和定義EJB引用。
以下是spring doc中的示例:
不使用jee jndi-lookup
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="jdbc/MyDataSource"/>
</bean>
<bean id="userDao" class="com.foo.JdbcUserDao">
<!-- Spring will do the cast automatically (as usual) -->
<property name="dataSource" ref="dataSource"/>
</bean>
使用jee jndi-lookup
<jee:jndi-lookup id="dataSource" jndi-name="jdbc/MyDataSource"/>
<bean id="userDao" class="com.foo.JdbcUserDao">
<!-- Spring will do the cast automatically (as usual) -->
<property name="dataSource" ref="dataSource"/>
</bean>
在這里更多細節
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.