Я пытаюсь настроить класс с помощью конфигурации на основе аннотаций в Spring 3, которая принимает примитивные значения в качестве аргументов конструктора:
@Component
class MyBean {
MyBean(String arg1, String arg2) {
// ...
}
}
И контекст приложения такой:
<beans [...]>
<context:component-scan base-package="com.example" />
<context:property-override location="/WEB-INF/example.properties" />
</beans>
Я пытаюсь найти способ указать, что аргументы конструктора должны быть взяты из файла свойств. Очевидно, это работает с конструкторами, которые принимают обычные bean-компоненты (например, MyClass(Bean bean1, OtherBean bean2)
), но только свойства?
Я также пытался аннотировать аргументы конструктора с помощью аннотации @Value
Spring 3 и выражения EL для значения, такого как @Value("#{prop.Prop1}") arg1
, но, похоже, это тоже не работает.