В проекте у меня есть объект org.apache.commons.configuration.PropertiesConfiguration
, зарегистрированный как Бин, для предоставления значений конфигурации вокруг приложения с возможностью горячей перезагрузки.
Пример: я определил DataSource
одноэлементный Бин.Затем я создал объект ReloadingDataSource
, который переносит и делегирует «реальный» DataSource
, и каждый раз, когда файл конфигурации изменяется, он может воссоздать его в поточно-ориентированном режиме.
IЯ хотел бы сделать что-то подобное для простых значений свойств.
Я хотел бы создать простой, Autowire
способный объект, который делегирует извлечение в Apache PropertiesConfiguration
Bean.
Использование должно бытьпохож на:
@Property("my.config.database")
private Property<String> database;
И сайт вызова будет просто:
final String databaseValue = database.get()
Вы скажете, просто обведите объект PropertiesConfiguration
.Может быть, вы и правы, но я бы хотел предложить другую абстракцию, более простую в использовании.
Я знаю, что с ProxyFactoryBean
можно создать прокси AOP для вызовов методов,Это правильный путь или есть лучшие альтернативы?Может быть, чистый Spring AOP / AspectJ?
Я не хочу использовать Spring Cloud или аналогичные зависимости.