# relativer Pfad zu properties Datei



## oetzi (7. Jun 2009)

Nabend zusammen,
ich möchte einige globale Konfigurationswerte für meine Webanwendung in einer properties Datei vorhalten und bei Bedarf auslesen.
Aktuell habe ich die properties Datei noch einfach im selben Ordner wie die die Java Datei, allerdings werde ich schon bald aus verschiedenen Paketen/Ordner darauf zugreifen wollen.
Somit bräuchte ich einen zentralen Ort für die Datei worauf ich dann über einen relativen Pfad zugreife.
Allerdings bin ich mir nicht sicher, wie ich das am schickesten anstelle.

Kann mir da mal jemand einen Tipp geben?

Schönen Gruß
oetzi


----------



## maki (7. Jun 2009)

Lesetipp: Smartly load your properties - JavaWorld

Ansonsten kann man Config-Daten für WebApps auch in die web.xml stecken.


----------



## oetzi (7. Jun 2009)

Hi Maki,
dank dir für den Link! Den werde ich mir morgen mal in Ruhe durchlesen.

In welcher Form könnte ich das denn in die web.xml stecken?
Einfach so die Key/Value Paare darein? Oder die propertiesdatei dort verlinken?


----------



## maki (7. Jun 2009)

Ich meine damit zB. context-param für den gesamten Context, init-param für Servlets, etc. pp.


----------



## oetzi (8. Jun 2009)

so, ich bin jetzt grad mal dazu gekommen mir den Artikel durchzulesen.

vielleicht verstehe ich was grundlegen falsch.
was bedeutet absoluter pfad? von wo aus muss ich anfangen den anzugeben?
ich bin bis jetzt davon ausgegangen, dass das c:/ bzw. "/" also das root Verzeichnis ist. 
Oder geht der von dem root verzeichnis der application aus?


----------



## maki (8. Jun 2009)

> vielleicht verstehe ich was grundlegen falsch.
> was bedeutet absoluter pfad? von wo aus muss ich anfangen den anzugeben?
> ich bin bis jetzt davon ausgegangen, dass das c:/ bzw. "/" also das root Verzeichnis ist.
> Oder geht der von dem root verzeichnis der application aus?


Solltest den Artikel nochmals lesen 
Es bezieht sich alles auf den Classpath, nicht auf das Dateisystem.


----------



## oetzi (8. Jun 2009)

ok, ich glaube dann hatte ich wohl eher classpath-verständnis-probleme... 
aber ich glaube jetzt habe ich es kapiert.

Ich würde doch eine properties Datei die unter /WEB-INF/classes/config/xyz.properties liegt über
ClassLoader.getResourceAsStream ("/config/xyz.properties");
erhalten, richtig?


----------



## maki (8. Jun 2009)

Ja


----------



## oetzi (8. Jun 2009)

dank dir!


----------

