Qu'est-ce que L'OAC, L'OTD et les couches de Service dans le cadre du printemps?

j'écris des services de repos en utilisant le printemps et l'hibernation. J'ai lu beaucoup de ressources sur internet, mais elles n'ont pas clarifié mes doutes. Veuillez m'expliquer en détail ce qui est DAO, DTO et Service couches dans le cadre du printemps? Et pourquoi l'utilisation de ces couches est nécessaire au printemps pour développer des Services API RESTfull.

24
demandé sur Naseer Mohammad 0000-00-00 00:00:00

3 réponses

tout d'Abord, ces concepts sont Plate-Forme Agnostique et ne sont pas exclusifs à Spring Framework ou à tout autre framework, d'ailleurs.


Objet De Transfert De Données

DTO est un objet qui transporte des données entre les processus. Lorsque vous travaillez avec une interface à distance, chaque appel il est cher. Par conséquent, vous devez réduire le nombre d'appels. La solution est de créer un Data Transfer Object qui peut contenir toutes les données de l'appel. Il doit être serialisable pour aller à travers la connexion. Habituellement, un assembleur est utilisé sur le serveur pour transférer des données entre le DTO et tout objet de domaine. Il est souvent peu plus que d'un tas de champs et les getters et setters pour eux.


Data Access Object

Data Access Object résume et encapsule tout l'accès à la source de données. DAO gère la connexion avec la source de données à obtenir et stocker des données.

l'OFA met en œuvre le mécanisme d'accès requis pour travailler avec la source de données. La source de données pourrait être un stock persistant comme un RDBMS, ou un service d'affaires accessible via REST ou SOAP.

DAO résumés des données sous-jacentes d'accès de mise en œuvre de l' Service objets permettre un accès transparent à la source de données. Service également des délégués les opérations de chargement et de stockage des données DAO.


Service

Service les objets font le travail que le l'application a besoin de faire pour le nom de domaine que vous travaillez avec. Il s'agit de calculs basés sur les entrées et stockées des données, la validation de toutes les données qui viennent de la présentation, et de comprendre exactement quelles sont les données logique source à Envoi, en fonction des commandes reçues de la présentation.

Service Layer définit les limites d'une application et son ensemble de opérations disponibles à partir de le point de vue de l'interface client couches. Il encapsule la logique commerciale de l'application, contrôlant les transactions et la coordination des réponses dans la mise en œuvre de ses opérations.


Références

Martin Fowler a un grand livre sur le commun Applications Architecture PatternsModèles d'Architecture d'Applications d'Entreprise. Il y a aussi, Core J2EE Les modèles qui vaut la peine de regarder.

32
répondu Ali Dehghani 2016-04-08 12:01:13

DAO Objet d'Accès aux Données:

un objet fournit une interface commune pour effectuer toutes les opérations de la base de données comme le mécanisme de persistance.

public interface GenericDao<T> {
  public T find(Class<T> entityClass, Object id);
  public void save(T entity);
  public T update(T entity);
  public void delete(T entity);
  public List<T> findAll(Class<T> entityClass);
}

par exemple : Printemps – DAO et de la couche de Service

DTO - Objet de Transfert de Données:

Un objet qui transporte des données entre les processus afin de réduire le nombre d'appels de méthode signifie que vous combiner plus plus d'une entité POJO dans la couche service.

par exemple une requête GET /rest/customer/101/orders est de récupérer toutes les commandes de la clientèle id 101 avec les détails du client donc vous avez besoin de combiner l'entité Customer entité Orders avec des détails.

4
répondu vels4j 2017-01-08 08:53:40

L'application D'entreprise est divisée en niveaux pour faciliter la maintenance et le développement. Les niveaux sont dédiés à des types particuliers de tâches comme

  • couche de présentation (UI)
  • couche
  • couche D'accès aux données (DAO, DTO)

pourquoi ce des

3
répondu