2013-09-09 3 views
0

Итак, в приложении весны 3, которое я создаю, было бы удобно иметь возможность считывать значение из конфигурации, а затем основываться на значении чтения, выбирать между двумя реализациями интерфейса а затем построить компонент этого объекта.Spring 3 Динамический выбор класса bean

У меня есть настройка файла конфигурации (с использованием util: properties), а другой код java обращается к нему просто отлично, но я не уверен, как ссылаться на него в моем xml-файле приложения и как закодировать это условное логика. Или я об этом неправильно?

ответ

0

Вы, вероятно, хотите что-то похожее на это:

@Configuration 
public class MyConfiguration { 

    @Autowired 
    ApplicationContext applicationContext; 

    @Value("${someProperty}") 
    String someProperty = "B"; 

    @Bean(name="myBean") 
    public MyInterface ehCacheManager() { 
    if ("A".equals(someProperty)) { 
     return new MyInterfaceA(); 
    } else { 
     return new MyInterfaceB(); 
    } 
    } 
} 

Вы можете дифференцироваться некоторым свойством, какой интерфейс реализации для использования.

+0

Я думал о создании java config, но можно ли записать его в конфигурацию xml? – Nixx