Frühling, um zu verstehen, Eigenschaften in YAML
Ist der Frühling aufgeben YAML zu verwenden, als eine alternative zu .Eigenschaften /.xml-da:
[Spring-Entwickler]: ...YAML angesehen wurde, aber wir dachten, dass das zählen whitespace signifikant wurde ein support-Alptraum in der Herstellung... [Verweis aus Frühlings-forum]
Ich bin zuversichtlich, YAML, macht sehr viel Sinn für die Eigenschaften, und ich verwende es derzeit auf dem Projekt, aber Schwierigkeiten haben, zu injizieren Eigenschaften in einem
<property name="productName" value="${client.product.name}" />
Mode.
Alles, was ich bin fehlt, oder sollte ich erstellen Sie eine benutzerdefinierte YamlPropertyPlaceholderConfigurer ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß nicht, ob das ist ein bisschen zu spät, aber Nein - Sie müssen nicht zu implementieren, die ganze YamlPropertyPlaceholderConfigurer stattdessen können Sie einfach erstellen Sie benutzerdefinierte PropertiesPersister und fügen Sie es als optionalen parameter.
Hier erfahren Sie, wie Ihre Konfiguration Aussehen wird
Und hier ist der bare-bone (nur Lesen) Umsetzung mit SnakeYaml, fühlen Sie sich frei, um hinzuzufügen, was Sie benötigen, einschließlich Fehlerbehandlung
Als weiterer Vorteil - hier ist, wie erstelle ich Yaml Beispiel
Lesen Sie auch diese in mein blog
Für diejenigen, die mit Spring 3.1, registrieren Sie einen Yaml PropetySource. Die SnakeYaml code ist aus der Bostone code (danke) angepasst an neue PropertySource system von Spring 3.1.
Bitte beachten Sie, dass dies auch inspiriert von ResourcePropertySource, und es lädt Eigenschaften in der ISO 8859-1-Zeichensatz. Ich öffnete ein Fehler, dass: SPR-10096
Können Sie diese Eigenschaft Quelle zu Ihrem Anwendungskontext. Dies kann auch durchgeführt werden, die in Ihrer unit-tests:
Für die vollständige und vollkommene Noppen wie mich, die null wissen von dem, was der Autor eigentlich machen, aber Sie müssen es trotzdem tun...hier ist, wie ich es zu arbeiten. Habe keine Ahnung, wie de-verbitten sich die instanceOfYaml() aber.
Eine andere Sache, meine Spring-Boot-Projekt Eclipse Lesen aus Dateien markiert .yml, nicht .yaml
Forum posten auf den Sie verweisen, wurde von der dmServer forum, anstatt dem Spring Framework, und es gibt sehr wenig Bezug zwischen den beiden, so würde ich nicht alles Lesen hinein.
Oben auf, dass, YAML ist ziemlich unbekannt in der Java-Welt, so dass das hinzufügen der Unterstützung für Sie gewesen wäre, ein token Geste (wenn Sie ' ll entschuldigen Sie den Ausdruck) am besten. XML dominiert in Java, besonders auf server-Seite, so gibt es wenig Einsatz gegen den Strom zu schwimmen gibt es vor allem für eine Minderheit-format wie YAML.
Gesagt haben, dass, schreiben Sie Ihre eigenen
YamlPropertyPlaceholderConfigurer
sollte leicht genug sein, vorausgesetzt, Sie finden ein YAML-parser für Java.JvYaml
,SnakeYAML
,YamlBeans
,JYaml
usw.. YAML ist weit von unerhört in der Java-Welt, und die Menschen die es benutzen [ich denke, diejenigen, die nicht verwenden Frühling]. dmServer ist Frühjahr, und zwar nicht die Rahmen, sondern Entscheidungen werden von der so ziemlich der gleiche Kreis von Menschen [SpringSource ist nicht eine große "division" ~150 Leute]