Frage

Ich habe eine Anwendung wie folgt aufgebaut:

  • dao
  • Domäne
  • main
  • Dienste
  • utils

Ich habe eine Klasse gemacht, die die Anwendungskonfiguration aus einer XML-Datei liest. Die Frage ist, wo soll es platziert werden?

Mit dem Reflex, ich habe es in Dienstprogramme platziert, aber Utility-Klassen haben statische Methoden und sind staatenlos, während diese Klasse eine Instanz von Apache Commons XMLConfiguration verwendet. Soll ich die Methoden einfach anpassen, um diese Instanz zu den Bereichen der Methoden in dieser Klasse beschränkt ist?

War es hilfreich?

Lösung

gehe ich davon aus den Gegenständen Pakete sind, so dass ich mit dem Haupt Paket gehen würde.

  • dao
  • Domäne
  • Haupt enthält die Anwendung und deren Konfiguration Leser
    • Konfiguration
    • log
  • Dienste
  • utils

Warum? Die Konfiguration einer Anwendung, sei es in XML sein oder nicht und ob es basiert auf einem Anwendungs-Framework wie Spring oder nicht, ist Teil seiner Hauptfunktionalität. Booting eine Anwendung auf die Hauptverantwortung für die Anwendung. Alle der Business-Funktionalität, die alle der glänzenden Features, die es in dem Bereich und Service-Layer implementiert bereitstellt.

Du hast Recht, utils dreht sich alles um statische oder ähnliche Werkzeuge. Da die Konfiguration einer Anwendung sehr wichtig ist, würde ich es nicht ein Dienstprogramm erklären. Ein Dienstprogramm ist etwas, das kann leicht durch ein anderes Dienstprogramm gleichen Typs ersetzt werden (z StringUtil vs. StringUtils vs. IOUtils usw. Sie alle haben sehr ähnliche Funktionalität)

Andere Tipps

Dies ist abhängig von dem Build-System und Anwendungstyp Sie verwenden i.g. Maven würde configfiles in src / main platzieren vorschlagen / Ressourcen

In WAR-Datei könnte man sich in WEB-INF platzieren oder WEB-INF / config

Nach Ihrer Projektstruktur würde ich vorschlagen, einen Ordner Config oder Ressourcen einzuführen, da fast jeder sie dort erwarten würde.

Wenn Sie mit Frühling arbeiten, werfen Sie einen Blick auf Konfiguration Platzhalter . Sie können eine einfache Java-Properties-Datei für Ihre Konfigurationseigenschaften verwenden und auf Ihrem Klassenpfad setzen (oder einen beliebigen anderen Ort). Alsou Sie Ihre eigene Implementierung schaffen könnte eine andere Form zu halten Ihre Konfigurationswerte (XML, Datenbanken usw.).

zu verwenden,

Als Konfiguration ist ein Querschnitt Aspekt nicht ausschließlich diese Schichten zu einem abbildet. Legen Sie die Konfigurationsdateien (XML oder Eigenschaften) in den Classpath und verwenden Sie es über Spring Ihre Bohnen zu konfigurieren.

Eigenschaften auf Basis von Konfigurationsdaten der PropertyPlaceholderConfigurer ist eine gute Lösung.

Ich fordere Sie einen Blick auf Frühling zu haben. Könnte wie übertrieben scheinen für Sie an erster Stelle, aber Sie wil es lieben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top