在Spring中是否可以为bean类名加别名?

我有一个类似于以下示例的字符串属性:

<property name="mappingData">
  <list>                
    <bean class="com.company.product.longNamingStandard.migration.extractor.FieldMapping">
      <property name="elementName" value="entitlement.user"/>
      <property name="mapping" value="DocUsers"/>
    </bean>
    <bean class="com.company.product.longNamingStandard.migration.extractor.FieldMapping">
      <property name="elementName" value="entitlement.contributor"/>
      <property name="mapping" value="DocContributors"/>
    </bean>
  </list>
</property>  

长类名影响可读性&还会造成重构开销.

是否可以为类名加上别名并使用短名称来声明Bean?还是我错过了另一种最佳实践?

解决方法:

对您来说可能有点晚了,但对其他人也很有用:

您可以使用父bean来完成此任务.
首先声明一个父bean作为模板:

<bean id="FieldMapping" class="com.company.product.longNamingStandard.migration.extractor.FieldMapping"/>

然后使用parent属性在其他地方使用它.

<property name="mappingData">
  <list>                
    <bean parent="FieldMapping">
      <property name="elementName" value="entitlement.user"/>
      <property name="mapping" value="DocUsers"/>
    </bean>
    <bean parent="FieldMapping">
      <property name="elementName" value="entitlement.contributor"/>
      <property name="mapping" value="DocContributors"/>
    </bean>
  </list>
</property>

请注意,我的约定是在此处为父模板bean使用大写ID.

上一篇:语法-是否有比将[None]更改为`[]的Pythonic方式更多的方法


下一篇:[mybatis] sql语句无错误,但是执行多条sql语句时,抛出java.sql.SQLSyntaxErrorException