Nick: Pattern für globale Einstellungen

Hallo,

ich benötige eine vernünftige Lösung, am besten ein Pattern womit ich meine Einstellungen verwalten kann. Entwickele eine Java-Anwendung... dort benötige ich globale Einstellungen wie z. B. DatenbankConnectionString, Version des Programms, Name, RMI-Verbindungsdaten, Ports...

Habe bisher einfach ein neues Package "Globals" eingeführt. Darin habe ich eine Klasse namens "Global" diese enthält wiederum statische Methoden z. B.
für GetConnectionString() oder für GetVersion()...

da aber unser Prof es gerne sieht wenn wir Pattern verwenden, würde ich das ganze auch noch mal ändern.

LG und danke

  1. Hi,

    ich benötige eine vernünftige Lösung, am besten ein Pattern womit ich meine Einstellungen verwalten kann.

    Singleton?

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Singleton?

      Denke nicht dass das sinnvoll wäre. Schließlich muss ich von zig anderen Klassen auf diese eine Global-Klasse zugreifen. Beispiel

      • Datenbankklassen müssen sich den ConnectionString holen
      • RMI Klassen die Ports, IP...
      • Sonstige Klassen die aktuelle Version, den Titel...
        diese alle müssen entweder eine Instanz der "Settings-Klassse" erstellen (was ich nicht so gut finde). Deswegen habe ich die Methoden einfach static gemacht.
      1. Hello,

        Singleton?
        diese alle müssen entweder eine Instanz der "Settings-Klassse" erstellen (was ich nicht so gut finde).

        das Prinzip des Singleton ist dir nicht geläufig, oder?
        Aus meiner Sicht wäre es im Prinzip entweder ein Singleton oder ein statischer/Singleton Property-Objekt.

        MfG
        Rouven

        --
        -------------------
        sh:| fo:} ch:? rl:( br:& n4:{ ie:| mo:} va:) js:| de:] zu:| fl:( ss:) ls:& (SelfCode)
        Vegetarier essen meinem Essen das Essen weg.
        1. Hallo Rouven,

          arbeite mich gerade in Pattern ein, zudem auch noch in Java... Aber ich glaube ich hab jetzt verstanden, meinst du das so:

          Singleton settings;
          settings = Singleton.getInstance();  // objekt wird erzeugt bzw. vorhandenes zurückgegeben
          database.connect(settings.getConnectionString);

          im Gegensatz dazu, statische Methoden, schneller zu verwenden:
          database.connect(Settings.getConnectionString());

          Habe wie gesagt im Moment die 2. Variante mit statischen Methoden implementiert. Welche soll ich nun nehmen, was ist besser? Mal ganz davon abgesehen das unser Prof Pattern sehen will. Ich will mich lieber für die vernünftigere Variante entscheiden.

          1. Hallo,

            Singleton settings;
            settings = Singleton.getInstance();  // objekt wird erzeugt bzw. vorhandenes zurückgegeben
            database.connect(settings.getConnectionString);

            Was hindert dich an
            database.connect(Singleton.getInstance().getConnectionString());
            ?

            Gruss,
            OhneName

            1. Ja, ist mir vorhin auch eingefallen. Werde das Singleton-Pattern nehmen. Danke!