Maison > Java > javaDidacticiel > le corps du texte

Résumé des principes et fonctions de l'architecture à trois niveaux de Java (photo)

黄舟
Libérer: 2017-04-18 09:07:28
original
2918 Les gens l'ont consulté

Cet article présente principalement les concepts et les fonctions de l'architecture Java à trois niveaux . Les amis dans le besoin peuvent se référer à l'

Architecture à trois niveaux

<.>


Application à trois niveaux (application à 3 niveaux) Au sens habituel, l'architecture à trois niveaux divise l'ensemble de l'application métier en :

Couche de présentation (UI), Couche de logique métier (BLL), couche d'accès aux données (DAL). Le but de la distinction des niveaux est l'idée de « cohésion élevée, faible couplage ».

ConceptIntroduction

1 Couche de présentation (UI) : En termes simples, c'est l'interface affichée pour. l'utilisateur, c'est-à-dire ce qu'un utilisateur voit et gagne lorsqu'il utilise un système.

2. Couche de logique métier (BLL) : Les opérations pour des problèmes spécifiques peuvent également être considérées comme des opérations sur la couche de données et le traitement logique des données. ​

3. Couche d'accès aux données (DAL) : Les transactions effectuées par cette couche exploitent directement la base de données, pour l'ajout de données, la suppression, la modification, la recherche, etc. .

Vue d'ensemble

Dans la conception d'architecture logicielle, la structure hiérarchique est la structure la plus courante et la plus importante. La structure en couches recommandée par Microsoft est généralement divisée en trois couches, de bas en haut : couche d'accès aux données, couche de logique métier (également appelée couche de domaine) et couche de présentation.

Principe de structure à trois niveaux :

Dans les trois niveaux, les principales fonctions et la logique métier du système sont traitées dans la couche de logique métier.

L'architecture dite à trois niveaux ajoute une "couche intermédiaire" entre le client et la base de données, également appelée

couche de composants. Le système à trois niveaux mentionné ici ne fait pas référence aux trois couches physiques. Cela ne signifie pas simplement placer trois machines, ce qui est l'architecture à trois niveaux. Ce n'est pas seulement l'application B/S qui est l'architecture à trois niveaux. Le système à trois niveaux fait référence à la logique de trois couches, même si ces trois couches sont placées sur une seule machine.

Une application système à trois niveaux place les règles commerciales, l'accès aux données, la vérification de la légalité et d'autres tâches dans la couche intermédiaire pour le traitement. Normalement, le client n'interagit pas directement avec la base de données, mais établit une connexion avec la couche intermédiaire via la communication COM/DCOM, puis interagit avec la base de données via la couche intermédiaire.

Les fonctions de chaque couche

1 :

Couche d'accès aux données : Principalement pour les données brutes (base de données ou fichier texte, etc.) ) , plutôt que les données d'origine, c'est-à-dire qu'il s'agit du fonctionnement des données, et non de la base de données, fournissant spécifiquement des services de données pour la couche de logique métier ou la couche de présentation

2 :

Couche de logique métier.  : Il s'agit principalement du fonctionnement de problèmes spécifiques. Cela peut également être compris comme le fonctionnement de la couche de données et le traitement de la logique métier des données. Si la couche de données est la pierre angulaire, alors la couche logique est la construction. de ces éléments constitutifs.

3 :

Couche de présentation : représente principalement le mode WEB, et peut également être exprimé comme WINFORLe mode WEB peut également être exprimé comme : aspx, si la couche logique est assez puissante et complète, quelle que soit la manière dont la couche de présentation est définie et modifiée, la couche logique peut parfaitement fournir des services.

Manières spécifiques de distinguer

1 : Couche d'accès aux données : Cela dépend principalement du fait que votre couche de données contient un traitement logique. En fait, chacune d'entre elles

. La fonction réalise principalement diverses opérations sur les fichiers de données. Ne vous inquiétez pas des autres opérations.

2 : Couche de logique métier : Principalement responsable du fonctionnement de la couche de données. C'est-à-dire combiner certaines opérations de la couche de données.

3 : Couche de présentation : accepte principalement les demandes des utilisateurs et renvoie les données, offrant ainsi aux clients un accès aux applications.

La couche de présentation

est située dans la couche la plus externe (couche supérieure), la plus proche de l'utilisateur. Utilisé pour afficher des données et recevoir des données saisies par les utilisateurs, offrant aux utilisateurs une interface interactive.

Couche de logique métier

La couche de logique métier est sans aucun doute la partie qui incarne la valeur fondamentale de l'architecture du système. Son objectif est principalement la formulation de règles métier, la mise en œuvre de processus métier et d'autres conceptions de systèmes liés aux besoins de l'entreprise. En d'autres termes, il est lié à la logique du domaine (Do

main) que le. Le système gère. Souvent, la couche de logique métier est également appelée couche de domaine.

Par exemple, dans le livre « Patterns of Enterprise Application Architecture », Martin Fowler divise l'ensemble de l'architecture en trois couches principales : la couche de présentation, la couche de domaine et la couche de source de données. En tant que pionnier de la conception

pilotée par domaine , Eric Evans a procédé à une division plus détaillée de la couche de logique métier, en la subdivisant en couche d'application et couche de domaine, et en séparant davantage la logique de domaine et les solutions de logique de domaine via la superposition.

La couche de logique métier joue un rôle essentiel dans l'architecture du système. Elle se situe entre la couche d'accès aux données et la couche de présentation, et joue un rôle de liaison dans l'échange de données. Puisque la couche est une structure faiblement couplée, la dépendance entre les couches est descendante. La couche inférieure est "ignorante" par rapport à la couche supérieure. La modification de la conception de la couche supérieure n'a aucun impact sur la couche inférieure qu'elle appelle.

Si l'idée de concevoir l'interface est suivie dans la conception en couches, alors cette dépendance vers le bas devrait également être une dépendance faible. Par conséquent, sans modifier la définition de l’interface, l’architecture en couches idéale devrait être une architecture « à tiroirs » qui prend en charge l’extractibilité et la remplaçabilité. Pour cette raison, la conception de la couche de logique métier est particulièrement critique pour une architecture prenant en charge l’évolutivité, car elle joue deux rôles différents.

Pour la couche d'accès aux données, c'est l'appelant ; pour la couche de présentation, c'est l'appelé. La relation entre dépendance et dépendance est intriquée dans la couche de logique métier. Comment réaliser le découplage des relations de dépendance est une tâche laissée aux concepteurs en plus de la mise en œuvre de la logique métier.

Couche de données

Couche d'accès aux données : parfois également appelée couche de persistance, sa fonction est principalement responsable de l'accès aux bases de données et peut accéder aux systèmes de bases de données, aux fichiers binaires, au texte document ou document XML.

Pour faire simple, il s'agit d'implémenter les opérations de Sélection, Insertion, Mise à jourdate et Suppression sur la table de données. Si vous souhaitez ajouter des éléments ORM, cela inclura le mapping entre l'objet et la table de données, ainsi que la persistance des entités objets.

Avantages et inconvénients

Avantages

1. Les développeurs ne peuvent se concentrer que sur une seule couche de la structure entière ;

2. Vous pouvez facilement remplacer l'implémentation de la couche d'origine par une nouvelle

3 Vous pouvez réduire la dépendance entre les couches

Oui Propice à la standardisation ; >

5. Propice à la réutilisation de la logique à chaque couche.

6. La structure est plus claire

7. Lors d'une maintenance ultérieure, les coûts et le temps de maintenance sont considérablement réduits

Inconvénients

1. Performances du système réduites. Cela va de soi. Si une structure hiérarchique n’est pas adoptée, de nombreuses entreprises peuvent accéder directement à la base de données pour obtenir les données correspondantes, mais cela doit désormais se faire via la couche intermédiaire.

2. Parfois cela entraînera des modifications en cascade. Cette modification se reflète particulièrement dans le sens descendant. Si une fonction doit être ajoutée à la couche de présentation, afin de garantir que sa conception est conforme à la structure hiérarchique, il peut être nécessaire d'ajouter le code correspondant à la couche de logique métier et à la couche d'accès aux données correspondantes.

3. Augmentation des coûts de développement.

Règles

Le programme de structure à trois niveaux ne signifie pas que le projet est divisé en trois modules : DAL, BLL et WebUI. Il est appelé trois couches. Les questions suivantes se trouvent dans votre À l'intérieur du projet :

1. Il n'y a que quelques (ou pas) instructions SQL ou

appels de procédure stockée dans UILayer, et ces instructions sont garanties de ne pas modifier. les données ?

2. Si vous supprimez UILayer, votre projet peut-il toujours fournir toutes les fonctions au niveau de l'interface/

API ?

3. à d'autres projets avec des environnements similaires ?

4. Les trois modules peuvent-ils être exécutés sur des serveurs différents ?

Si toutes les réponses ne sont pas OUI, alors votre projet ne peut pas être considéré comme un programme à trois niveaux. au sens strict. 3 Le programme de couche a certaines règles qui doivent être convenues :

1 Plus important encore, la couche UI ne peut être utilisée que comme un shell et ne peut contenir aucun traitement BizLogic

<.>2. La conception doit partir du point de départ du BLL, et non de l'interface utilisateur. La couche BLL doit implémenter tout BizLogic sur l'API, de manière

orientée objet

. 3. Que la couche de données soit un simple SqlHelper ou que les

Classes

de mappage doivent être indépendantes du système jusqu'à un certain degré d'abstraction 4. Que vous utilisiez ou non

Enterprise. Service),

ou COM+( Technologies d'objets distants telles que les technologies d'objets distants, qu'elles soient réellement déployées sur différents serveurs lors du déploiement, au moins ces considérations doivent être prises en compte lors de la conception. De plus, plusieurs serveurs doivent être pris en compte. clustering via l'équilibrage de charge. Remoting,WebServiceAinsi, lorsque vous déterminez si une conception à trois niveaux/multi-niveaux doit être appliquée à un projet, vous devez d'abord vous demander si cela est vraiment nécessaire. En fait, pour la plupart des programmes, c'est le cas ? assez pour ouvrir une application Web, et il n'est pas du tout nécessaire de le faire. C'est tellement compliqué que la structure multicouche est utilisée pour résoudre des

exigences de projet

vraiment complexes. La différence entre

et

MVC

MVC (Model-View-Controller) est un modèle de conception que nous pouvons utiliser pour créer une distinction entre les objets de domaine et les objets de la couche de présentation de l'interface utilisateur.

C'est aussi au niveau architectural. La même chose c'est qu'ils ont tous les deux une couche de présentation, mais la différence réside dans les deux autres couches.

ne définit pas le concept de Controller dans l'architecture à trois niveaux. C'est ce qui me semble le plus différent. MVC ne considère pas l'accès logique métier comme deux couches. C'est la principale différence entre l'utilisation d'une architecture à trois niveaux ou de MVC pour créer un programme. Bien sûr. Le modèle est également mentionné dans l'architecture à trois niveaux, mais le concept de Model dans l'architecture à trois niveaux est différent du concept de modèle dans MVC. La couche modèle typique dans les « trois niveaux » est composée de classes d'entités. , tandis que dans MVC, il est composé de logique métier et de données d'accès.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!