spring之是否可以在 Spring 中为 bean 类命名别名
落叶无声
阅读:11
2024-11-24 20:56:43
评论:0
我有一个类似于以下示例的字符串属性:
<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。
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。