codecamp

Spring教程 - Spring Ref Bean

Spring教程 - Spring Ref Bean


在一个大项目中,我们可能有几个Spring配置文件。 一个Java bean定义在一个Spring xml配置文件可以通过 ref 标签在另一个配置文件中引用。

ref标签具有以下语法。

<ref bean="someBean"/>

在下面的Spring-Output.xml文件中,我们创建了两个Java Bean并给它们id。

<beans ...
  <bean id="CSVPrinter" class="com.java2s.output.impl.CSVPrinter" />
  <bean id="JSONPrinter" class="com.java2s.output.impl.JSONPrinter" />
</beans>

在下面的Spring-Common.xml文件中,我们定义了一个com.java2s.output.PrinterHelper Java Bean并将其标识为PrinterHelper。 为了注入 CSVPrinter 中定义的Spring-Output.xml文件中,我们必须使用 ref 标记来包含它。

<beans ...
  <bean id="PrinterHelper" class="com.java2s.output.PrinterHelper">
    <property name="outputGenerator" >
      <ref bean="CSVPrinter"/>
    </property>
  </bean>
</beans>


参考本地Bean

要引用我们在同一个xml文件中定义的bean,我们可以使用 ref 标记与 local 属性。

它具有以下格式。

<ref local="someBean"/>

在下面的xml代码中,在“Spring-Common.xml"中声明的bean“PrinterHelper"可以访问  “CSVPrinter"或“JSONPrinter",它们在具有ref local的同一文件中定义。

<beans ...
  <bean id="PrinterHelper" class="com.java2s.output.PrinterHelper">
    <property name="outputGenerator" >
      <ref local="CSVPrinter"/>
    </property>
  </bean>
  <bean id="CSVPrinter" class="com.java2s.output.impl.CSVPrinter" />
  <bean id="JSONPrinter" class="com.java2s.output.impl.JSONPrinter" />
</beans>

通过使用ref local可以增加xml配置文件的可读性。



春天教程 - 春天松散耦合
Spring教程 - Spring Bean属性
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }