what's the best way to use application constants in spring xml configuration?
constants, java, spring, spring-el
Solution
You could use `<util:constant>` (See C.2.2 The util schema):
<bean class="example.SomeBean">
<property name="anyProperty">
<util:constant static-field="example.AppConfiguration.EXAMPLE_CONSTANT" />
</property>
</bean>
It's debatable as to whether that's any better, though. Your SpEL version is more succinct.
Another option is to use the Java configuration style, which is more natural (see 4.12 Java-based container configuration):
@Bean
public SomeBean myBean() {
SomeBean bean = new SomeBean();
bean.setProperty(EXAMPLE_CONSTANT); // using a static import
return bean;
}
Problem
I want to use my application constants within spring xml configuration. I know to do that with spring SpEl with something like this: ``` <bean class="example.SomeBean"> <property name="anyProperty" value="#{ T(example.AppConfiguration).EXAMPLE_CONSTANT}" /> <!-- Other config --> </bean> ``` So, is there a better way to do this?