Erstellen von Objekten mit Guave von property-Dateien
In unseren Anwendungen, die wir mithilfe von property-Dateien sehr viel. Seit ein paar Monaten habe ich angefangen zu lernen, Guave, und ich mochte Sie eigentlich.
Was ist der beste Weg, um erstellen Sie eine Map<String, Datasource>
?
Die property-Datei-format ist nicht so streng. Es kann geändert werden, wenn Es sein kann, besser ausgedrückt mit einem anderen format?
Beispiel-property-Datei:
datasource1.url=jdbc:mysql://192.168.11.46/db1
datasource1.password=password
datasource1.user=root
datasource2.url=jdbc:mysql://192.168.11.45/db2
datasource2.password=password
datasource2.user=root
Du musst angemeldet sein, um einen Kommentar abzugeben.
Properties-Klasse ist eine Unterklasse von HashTable, die wiederum implementiert die Karte.
Laden Sie es wie gewohnt mit:
edit: Ok, so dass Sie wollen, um es zu transformieren, um Map<String, Datasource> 😉
Wahrscheinlich gibt es einen leichteren Weg, aber das sollte funktionieren 🙂
Immer noch du bist besser dran mit json oder xml. Sie können auch laden, Eigenschaften von verschiedenen Datenquellen aus verschiedenen Dateien.
edit2: mit weniger Guave, mehr java:
Die einfachste Sache ist wohl zu JSON verwenden, anstatt eine properties-Datei für dieses:
Dann können Sie einfach eine Bibliothek wie Gson zu konvertieren, dass Sie in Objekte:
Dann die Karte Holen:
Wenn die Datei, die Sie für die Konfiguration ist nicht so streng, man könnte eine XML-Datei zum speichern der Definition.
Beispiel definition:
Die mit einem Verbindungs-manager-Klasse, konnte man nur Lesen Sie die XML-Datei zu erhalten, Verbindungs-info und erstellen Sie eine Instanz von verbindungen und verwalten Sie.