Creo que https://github.com/typesafehub/config es exactamente lo que estás buscando. El formato se llama HOCON para Notación de objetos de configuración optimizada para el ser humano y es un superconjunto de JSON.
Examples of HOCON:
Hocón que también es válido JSON:
{
"foo" : {
"bar" : 10,
"baz" : 12
}
}
Hocón también soporta el formato propiedades estándar, por lo que lo siguiente es válido, así:
foo.bar=10
foo.baz=12
Una de las características que encuentro muy útil es la herencia, esta allo ws a capas de configuraciones. Por ejemplo, una biblioteca tendría un reference.conf
, y la aplicación que utiliza la biblioteca tendría un application.conf
. La configuración en application.conf
anulará los valores predeterminados en reference.conf
.
Standard Behavior para configuraciones de carga:
El ConfigFactory.load método de conveniencia() carga el siguiente (primera cotizada son más altos de prioridad):
- propiedades del sistema application.conf (todos los recursos en classpath con este nombre)
- application.json (todos los recursos en classpath con este nombre )
- application.properties (todos los recursos en classpath con este nombre )
- referencia.conf (todos los recursos en la ruta de clase con este nombre)
Bueno, necesito algo si yo no no tiene que preocuparse por analizar el archivo en absoluto. Todo lo que debo hacer es inicializar con el nombre del archivo y luego leer las claves con un solo comando. –
Eso es exactamente lo que necesita. Tal vez ni un solo comando, pero lo suficientemente cerca de eso. – maksimov