blob: 4fcf3a285c815280e2feffe9fc34256004b993ae [file] [log] [blame]
= MicroProfile Config
:index-group: MicroProfile
:jbake-type: page
:jbake-status: published
Este es un ejemplo de cómo usar la configuración de microprofile en TomEE.
== Ejecutar la aplicación:
[source,bash]
----
mvn clean install tomee:run
----
== microprofile-config.properties
Este es el archivo que contiene los valores a ser interpretados por MP Config.
== API
Hay tres formas de inyectar valores en la aplicación usando configuración.
1 . Para Valores por defecto con ConfigProperty ejecutar:
----
GET http://localhost:8080/mp-config-example/sample/defaultProperty
----
2 . Para obtener propiedades inyectadas con ConfigProperty ejecutar:
----
GET http://localhost:8080/mp-config-example/sample/injectedJavaVersion
----
3 . Para obtener una propiedad desde Config con getValue ejecutar:
----
GET http://localhost:8080/mp-config-example/sample/javaVersion
----
== Características de Config
MicroProfile Config es una solución que permite externalizar la configuración de los microservicios. Cada propiedad
puede ser inyectada directamente de forma individual.
[source,java,numbered]
----
@Inject
@ConfigProperty(name = "java.runtime.version")
private String javaVersion;
----
Es posible establecer valores por defecto aún cuando la propiedad no está definida en el contexto, por tanto se usará la configuración por defecto.
[source,java,numbered]
----
@Inject
@ConfigProperty(name = "defaultProperty", defaultValue = "ALOHA")
private String defaultProperty;
----
El objeto Config puede también ser inyectado, de manera que se puede invocar el método getValue() para obtener una propiedad particular.
[source,java,numbered]
----
@Inject
private Config config;
@GET
@Path("javaVersion")
public String getJavaVersionPropertyFromSystemProperties() {
return config.getValue("java.runtime.version", String.class);
}
----