Heim  >  Artikel  >  Java  >  Zusammenfassung der Prinzipien und Funktionen der dreistufigen Java-Architektur (Bild)

Zusammenfassung der Prinzipien und Funktionen der dreistufigen Java-Architektur (Bild)

黄舟
黄舟Original
2017-04-18 09:07:282919Durchsuche

In diesem Artikel werden hauptsächlich die Konzepte und Funktionen der dreistufigen -Architektur vorgestellt. Freunde in Not können sich auf

Dreischichtige Architektur


Dreischichtige Anwendung (3-Tier-Anwendung) Im üblichen Sinne unterteilt die dreischichtige Architektur die gesamte Geschäftsanwendung in:

Präsentationsschicht (UI), Geschäftslogikschicht (BLL), Datenzugriffsschicht (DAL). Der Zweck der Ebenenunterscheidung ist die Idee „hohe Kohäsion, geringe Kopplung“.

KonzeptEinführung

1. Präsentationsschicht (UI): Laienhaft ausgedrückt ist es die Schnittstelle, der angezeigt wird Der Benutzer, das ist das, was ein Benutzer sieht und gewinnt, wenn er ein System nutzt.

2. Geschäftslogikschicht (BLL): Operationen für bestimmte Probleme können auch als Operationen auf der Datenschicht und zur Geschäftslogikverarbeitung von Daten bezeichnet werden. ​

3. Datenzugriffsschicht (DAL): Transaktionen, die von dieser Schicht ausgeführt werden, bedienen die Datenbank direkt zum Hinzufügen, Löschen, Ändern, Suchen usw.

Übersicht

Im Software-Architekturdesign ist die hierarchische Struktur die häufigste und wichtigste Struktur. Die von Microsoft empfohlene Schichtstruktur ist im Allgemeinen von unten nach oben in drei Schichten unterteilt: Datenzugriffsschicht, Geschäftslogikschicht (auch Domänenschicht genannt) und Präsentationsschicht.

Dreistufiges Strukturprinzip:

In den drei Ebenen werden in der Geschäftslogikschicht die Hauptfunktionen und die Geschäftslogik des Systems verarbeitet.

Die sogenannte dreistufige Architektur fügt eine „Zwischenschicht“ zwischen dem Client und der Datenbank hinzu, auch

Komponentenschicht genannt. Das hier erwähnte dreischichtige System bezieht sich nicht auf die drei physischen Schichten. Es bedeutet nicht einfach, drei Maschinen zu platzieren, was die dreischichtige Architektur darstellt. Es ist nicht nur die B/S-Anwendung, die die dreischichtige Architektur darstellt. Das dreistufige System bezieht sich auf die Logik von drei Schichten, auch wenn diese drei Schichten auf einer Maschine platziert sind.

Eine dreistufige Systemanwendung platziert Geschäftsregeln, Datenzugriff, Legalitätsprüfung und andere Aufgaben zur Verarbeitung in der mittleren Schicht. Normalerweise interagiert der Client nicht direkt mit der Datenbank, sondern stellt über COM/DCOM-Kommunikation eine Verbindung mit der mittleren Schicht her und interagiert dann über die mittlere Schicht mit der Datenbank.

Die Funktionen jeder Ebene

1:

Datenzugriffsschicht: Hauptsächlich für Rohdaten (Datenbank oder Textdatei usw.) ) , und nicht die Originaldaten, das heißt, es handelt sich um den Betrieb von Daten, nicht um die Bereitstellung von Datendiensten für die Geschäftslogikschicht oder Präsentationsschicht

2:

Geschäftslogikschicht : Es dient hauptsächlich dem Betrieb spezifischer Probleme. Es kann auch als Betrieb der Datenschicht und Verarbeitung der Datengeschäftslogik verstanden werden. Wenn die Datenschicht der Baustein ist, ist die Logikschicht die Konstruktion dieser Bausteine.

3:

Präsentationsebene: stellt hauptsächlich den WEB-Modus dar und kann auch als WINFORDer M-Modus kann auch ausgedrückt werden als: aspx: Wenn die Logikschicht sehr leistungsfähig und vollständig ist, kann die Logikschicht Dienste unabhängig von der Definition und Änderung der Präsentationsschicht perfekt bereitstellen.

Spezifische Unterscheidungsmöglichkeiten

1: Datenzugriffsschicht: Es hängt hauptsächlich davon ab, ob Ihre Datenschicht tatsächlich eine logische Verarbeitung enthält

Die Funktion führt hauptsächlich verschiedene Vorgänge an Datendateien aus. Machen Sie sich keine Sorgen über andere Vorgänge.

2: Geschäftslogikschicht: Hauptverantwortlich für den Betrieb der Datenschicht. Das heißt, einige Operationen der Datenschicht werden kombiniert.

3: Präsentationsschicht: Akzeptiert hauptsächlich Benutzeranfragen und gibt Daten zurück und bietet Kunden Anwendungszugriff.

Die Präsentationsschicht

befindet sich in der äußersten Schicht (oberste Schicht), am nächsten zum Benutzer. Wird zum Anzeigen von Daten und zum Empfangen von Dateneingaben durch Benutzer verwendet und bietet Benutzern eine interaktive Schnittstelle.

Geschäftslogikschicht

Die Geschäftslogikschicht ist zweifellos der Teil, der den Kernwert der Systemarchitektur widerspiegelt. Der Schwerpunkt liegt hauptsächlich auf der Formulierung von Geschäftsregeln, der Implementierung von Geschäftsprozessen und anderen Systemdesigns im Zusammenhang mit Geschäftsanforderungen. Mit anderen Worten, es hängt mit der Logik des Feldes (Do

main) zusammen Die Geschäftslogikschicht wird oft auch als Domänenschicht bezeichnet.

Zum Beispiel unterteilt Martin Fowler im Buch „Patterns of Enterprise Application Architecture“ die gesamte Architektur in drei Hauptschichten: Präsentationsschicht, Domänenschicht und Datenquellenschicht. Als Pionier des domänengesteuerten

-Designs hat Eric Evans die Geschäftslogikschicht detaillierter unterteilt, indem er sie in Anwendungsschicht und Domänenschicht unterteilt und Domänenlogik und Domänenlogiklösungen durch Schichtung weiter getrennt hat.

Die Geschäftslogikschicht spielt eine entscheidende Rolle in der Systemarchitektur. Sie befindet sich zwischen der Datenzugriffsschicht und der Präsentationsschicht und spielt eine verbindende Rolle beim Datenaustausch. Da es sich bei der Schicht um eine schwach gekoppelte Struktur handelt, ist die Abhängigkeit zwischen den Schichten gegenüber der oberen Schicht „unwissend“. Eine Änderung des Designs der oberen Schicht hat keine Auswirkungen auf die untere Schicht.

Wenn die Idee des Designs für die Schnittstelle im geschichteten Design verfolgt wird, dann sollte diese Abwärtsabhängigkeit auch eine schwache Abhängigkeit sein. Daher sollte die ideale Schichtarchitektur, ohne die Schnittstellendefinition zu ändern, eine „Schubladen“-Architektur sein, die Extrahierbarkeit und Ersetzbarkeit unterstützt. Aus diesem Grund ist das Design der Geschäftslogikschicht für eine Architektur, die Skalierbarkeit unterstützt, besonders wichtig, da sie zwei verschiedene Rollen spielt.

Für die Datenzugriffsschicht ist es der Aufrufer; für die Präsentationsschicht ist es der Angerufene. Die Beziehung zwischen Abhängigkeit und Abhängigkeit ist in der Geschäftslogikschicht verwickelt. Die Implementierung der Geschäftslogik ist eine Aufgabe des Designers.

Datenschicht

Datenzugriffsschicht: Manchmal auch Persistenzschicht genannt, ihre Funktion ist hauptsächlich für den Datenbankzugriff verantwortlich und kann auf Datenbanksysteme, Binärdateien und Text zugreifen Dokument oder XML-Dokument.

Einfach ausgedrückt geht es darum, die Vorgänge „Auswählen“, „Einfügen“, „Aktualisieren“Datum und Löschen in der Datentabelle zu implementieren. Wenn Sie ORM-Elemente hinzufügen möchten, umfasst dies den MapPing zwischen dem Objekt und der Datentabelle sowie die Persistenz von Objektentitäten.

Vorteile und Nachteile

Vorteile

1. Entwickler können sich nur auf eine Ebene der gesamten Struktur konzentrieren;

2. Sie können die ursprüngliche Layer-Implementierung problemlos durch eine neue ersetzen.

Ja >

5. Fördert die Wiederverwendung der Logik auf jeder Ebene.

6. Die Struktur ist klarer

7. Bei späteren Wartungsarbeiten werden Wartungskosten und Wartungszeit erheblich reduziert

Nachteile

1. Reduzierte Systemleistung. Das ist selbstverständlich. Wenn keine hierarchische Struktur übernommen wird, können viele Unternehmen direkt auf die Datenbank zugreifen, um die entsprechenden Daten zu erhalten. Dies muss jedoch jetzt über die mittlere Ebene erfolgen.

2. Manchmal kommt es zu kaskadierenden Änderungen. Diese Modifikation spiegelt sich insbesondere in der Top-Down-Richtung wider. Wenn der Präsentationsschicht eine Funktion hinzugefügt werden muss, muss möglicherweise der entsprechende Code zur entsprechenden Geschäftslogikschicht und Datenzugriffsschicht hinzugefügt werden, um sicherzustellen, dass ihr Design der hierarchischen Struktur entspricht.

3. Erhöhte Entwicklungskosten.

Regeln

Die dreistufige Struktur des Programms bedeutet nicht, dass das Projekt in drei Module unterteilt ist: DAL, BLL und WebUI. Es wird als drei Ebenen bezeichnet. Die folgenden Fragen sind in Ihrem Projekt enthalten:

1. Es gibt nur wenige (oder keine) SQL-Anweisungen oder Aufrufe von

gespeicherten Prozeduren

, und diese Anweisungen werden garantiert nicht geändert die Daten?

2. Wenn Sie UILayer entfernen, kann Ihr Projekt weiterhin alle Funktionen auf der Schnittstellen-/API

-Ebene bereitstellen?

3. Kann Ihr DAL übertragen werden zu anderen Projekten mit ähnlichen Umgebungen?

4. Können die drei Module auf verschiedenen Servern ausgeführt werden?

Wenn nicht alle Antworten JA lauten, kann Ihr Projekt nicht als dreistufiges Programm betrachtet werden im engeren Sinne. 3 Für das Layer-Programm müssen einige Regeln vereinbart werden:

1. Am wichtigsten ist, dass der UI-Layer nur als Shell verwendet werden kann und keine BizLogic-Verarbeitung enthalten kann

2. Das Design sollte vom Ausgangspunkt ausgehen, nicht von der Benutzeroberfläche. Die BLL-Ebene sollte die gesamte BizLogic auf der API

objektorientiert

implementieren 3. Ob die Datenschicht ein einfacher SqlHelper ist oder mit Mapping

Klassenes sollte bis zu einem gewissen Grad an Abstraktion systemunabhängig sein

4. Unabhängig davon, ob Sie

Enterprise verwenden Service), oder Remote-Objekt-Technologien wie Remote-Objekt-Technologien, unabhängig davon, ob sie während der Bereitstellung tatsächlich auf verschiedenen Servern bereitgestellt werden, müssen beim Entwurf zumindest solche Überlegungen berücksichtigt werden Clustering durch Lastausgleich. Wenn Sie also überlegen, ob ein dreistufiges/mehrstufiges Design auf ein Projekt angewendet werden soll, müssen Sie zunächst überlegen, ob dies für die meisten Programme tatsächlich erforderlich ist Es reicht aus, eine Webanwendung zu öffnen, und es ist überhaupt nicht nötig, dies zu tun. Die mehrschichtige Struktur wird verwendet, um wirklich komplexe

Projektanforderungen

zu lösen. Der Unterschied zwischen COM+(Remoting,WebService und

MVC

MVC (Model-View-Controller) ist ein Entwurfsmuster, mit dem wir eine Unterscheidung zwischen Domänenobjekten und Objekten der UI-Präsentationsebene erstellen können.

Auch auf der architektonischen Ebene ist es das Gleiche, dass beide eine Präsentationsschicht haben, aber der Unterschied liegt in den anderen beiden Schichten.

definiert nicht das Konzept von Controller in der dreistufigen Architektur. Das ist meiner Meinung nach das Unterschiedlichste. MVC betrachtet den logischen Geschäftszugriff nicht als zwei Schichten. Dies ist der Hauptunterschied zwischen der Verwendung einer dreistufigen Architektur und MVC zum Erstellen eines Programms. Natürlich. Das Modell wird auch in der dreistufigen Architektur erwähnt, aber das Konzept von Model in der dreistufigen Architektur unterscheidet sich vom Konzept des Modells in MVC. Die typische Modellschicht in der „dreistufigen“ besteht aus Entitätsklassen In MVC besteht es aus Geschäftslogik und Zugriffsdaten.

Das obige ist der detaillierte Inhalt vonZusammenfassung der Prinzipien und Funktionen der dreistufigen Java-Architektur (Bild). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn