#java #spring-boot #configurationproperties
#java #весенняя загрузка #configurationproperties
Вопрос:
У меня есть некоторые свойства, где некоторая начальная часть одинакова, а оставшаяся отличается для всех свойств. может иметь 1 точку (.) 2,3 или более. Я не могу использовать @ConfigurationProperties
для их локализации prefix ="com.some.props"
, потому что остальные свойства разные
com:
some:
props:
prop1:
someProp: value
prop2:
anotherProp:
innerprop: value2
Итак, я создал пользовательский класс props и использовал @Value
, но мне нужно написать полный путь к свойству для переменной wach.
Есть ли способ применить префикс для всех @Value
в классе
@Component (prefix="com.some.props") //Not a valid code, but want something of this sort.
class props {
@Values ("${prop1.someprop}")
String someprop;
@Values ("${prop2.anotherProp.innerProp}")
String somethingElse;
}
Комментарии:
1. Вы пробовали использовать
public static class Prop1Properties
?2. Я не хочу создавать классы для одного свойства. Просто хочу иметь один класс свойств и все свойства, заполненные в нем.
3. Почему, в частности? Вложенные классы для вложенных свойств — это то, как сама Spring Boot обрабатывает эти вещи.
4. как я уже сказал, все свойства имеют разную структуру. Итак, я должен либо переименовать свойства (его проект миграции), либо создать слишком много внутренних классов в моем классе ConfigProperties….. Я знаю, что это стандарт spring way….as вы даете рекомендации… но хотел спросить, есть ли что-то для достижения того, что я просил …… 🙂