Arquivos Java .properties como classes fortemente tipadas
Existe maneira de obter arquivos de propriedades como classes fortemente tipadas? Eu acho que existem geradores de código, mas fazê-lo com anotações seria muito mais legal.
O que eu quero dizer é;
foo.properties file
keyFoo = valuefoo
keyBar = valuebar
talvez com
@properties(file="foo.properties")
class foo { }
torna-se
class foo {
String getKeyFoo() { }
String getKeyBar() { }
}
se não iniciar um projeto de código aberto para isso?
ADIÇÃO À PERGUNTA;
Acho que temos um arquivo foo.properties com let digamos mais de 10 entradas; e acho que é usado como um arquivo de configuração simples. O que eu acredito é que essas entradas de configuração devem ser fornecidas como uma classe de configuração com métodos getXXX relacionados para outras partes do design. Então, o resto do sistema acessa a configuração através da classe fornecida, em vez de lidar com os nomes das chaves e não precisa se incomodar com a configuração. Em seguida, você pode substituir essa classe por uma simulação quando estiver testando os chamadores e a dependência do sistema de arquivos desaparecer. Por outro lado, é muito bom obter todas as entradas de uma forma fortemente tipada.
Então, esse problema é um problema de geração de código nos bastidores, não é nada relacionado ao tempo de execução. Mas a geração de código com algo externo em vez de anotações não parecia boa para mim. Embora eu não esteja muito familiarizado com anotações, eu acho que isso poderia ser alcançado (mas vou ter em mente que as anotações não podem gerar classes como pontos de McDowell)