[FIXED] Anwendungseigenschaften ohne Spring injizieren

Ausgabe

Ich hätte gerne eine einfache, vorzugsweise annotationsbasierte Möglichkeit, externe Eigenschaften in ein Java-Programm einzufügen, ohne das Spring-Framework ( org.springframework.beans.factory.annotation.Value;) zu verwenden.

SomeClass.java

@Value("${some.property.name}")
private String somePropertyName;

Anwendung.yml

some:
  property:
    name: someValue

Gibt es eine empfohlene Möglichkeit, dies in der Standardbibliothek zu tun?

Lösung

Am Ende habe ich die Apache Commons-Konfiguration verwendet :

pom.xml:

<dependency>
      <groupId>commons-configuration</groupId>
      <artifactId>commons-configuration</artifactId>
      <version>1.6</version>
    </dependency>

src/…/PropertiesLoader.java

PropertiesConfiguration config = new PropertiesConfiguration();
config.load(PROPERTIES_FILENAME);
config.getInt("someKey");

/src/main/resources/application.properties

someKey: 2

Ich wollte meine Bibliothek nicht in eine Spring-Anwendung umwandeln (ich wollte @ValueAnmerkungen, aber keinen Anwendungskontext + @Component, zusätzliche Beans, zusätzliches Spring-Ökosystem/Gepäck, was in meinem Projekt keinen Sinn ergibt).


Beantwortet von –
ealfonso


Antwort geprüft von –
Clifford M. (FixError Volunteer)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like