Есть ли способ получить файлы свойств как строго типизированные классы? Я думаю, что есть генераторы кода, но делать это с аннотациями было бы намного круче.Файлы Java .properties как строго типизированные классы
Что я имею в виду;
foo.properties file
keyFoo = valuefoo
keyBar = valuebar
возможно с
@properties(file="foo.properties")
class foo { }
становится
class foo {
String getKeyFoo() { }
String getKeyBar() { }
}
, если не я должен начать проект с открытым исходным кодом для этого?
ДОПОЛНЕНИЕ К ВОПРОСУ;
Думаю, у нас есть файл foo.properties, допустим, более 10 записей; и подумайте, что он используется как простой файл конфигурации. Я считаю, что эти записи конфигурации должны предоставляться в качестве класса конфигурации с соответствующими методами getXXX для других частей проекта. Затем остальная часть системы обращается к конфигурации через предоставленный класс вместо того, чтобы иметь дело с именами ключей, и не нужно беспокоиться о том, где происходит конфигурация. Затем вы можете заменить этот класс макетом, когда вы тестируете абоненты, и зависимость от файловой системы уходит. С другой стороны, очень приятно, что получить все записи строго типизированным способом.
Таким образом, эта проблема является проблемой генерации кода за кулисами, она не имеет ничего общего с временем выполнения. Но генерация кода с внешним чем-то вместо аннотаций мне не показалась приятной. Хотя я не очень хорошо знаком с аннотациями, я предполагаю, что это может быть достигнуто (но я буду иметь в виду, что аннотации не могут генерировать классы как точки Макдауэлла)
, что было бы примером использования этого? пример был бы замечательным – Chii