Latest web development tutorials

Transfert Object Model

Transfert Object Model (Transfer Object Pattern) pour un transfert ponctuel de données avec plusieurs attributs du client vers le serveur. objet de transport est également connu comme des objets de valeur. Transférer l'objet est une simple méthodes getter / setter de classe POJO, il est sérialisable, de sorte qu'il peut être transmis à travers le réseau. Il n'a pas de comportement. serveur de classe affaires lu généralement données à partir de la base de données, puis remplir POJO, et l'envoie au client ou à passer par valeur. Pour les clients, l'objet de transfert est en lecture seule. Les clients peuvent créer leur propre objet de transport, et le transmettre au serveur afin de mettre à jour la base de données de la valeur unique. Ce qui suit est une entité de ce modèle de conception.

  • Business Objects (Business Object) - service de transport pour les données de remplissage de l' objet métier.
  • Objet de transfert (Transfer Object) - un POJO simple, seul set / get méthode attribut.
  • Client (Client) - Le client peut envoyer une requête ou d' envoyer un objet de transmission à l'objet métier.

réalisation

Nous allons créer un objet métier commeStudentBOet comme un objet de la transmissionStudentVO,ils représentent notre entité.

TransferObjectPatternDemo,notre classe de démonstration ici en tant que client sera utilisé pour démontrerStudentBOet modèle de conception d'objets de transfertdes élèves.

motif de transfert de l'objet diagramme UML

Etape 1

Créer un objet de transfert.

StudentVO.java

public class StudentVO {
   private String nom;
   int rollNo privé;

   StudentVO (String name, int rollNo) {
      this.name = nom;
      this.rollNo = rollNo;
   }

   public String getName () {
      Nom de retour;
   }

   setName public void (String name) {
      this.name = nom;
   }

   public int getRollNo () {
      retour rollNo;
   }

   public void setRollNo (int rollNo) {
      this.rollNo = rollNo;
   }
}

Etape 2

Il crée des objets métier.

StudentBO.java

import java.util.ArrayList;
import java.util.List;

public class StudentBO {
	
   // Liste est une base de données sous forme de liste <> StudentVO étudiants;

   StudentBO publique () {
      étudiants = new ArrayList <StudentVO> ();
      StudentVO student1 = new StudentVO ( "Robert", 0);
      StudentVO Etudiant2 = new StudentVO ( "John", 1);
      students.add (student1);
      students.add (Etudiant2);		
   }
   deleteStudent public void (StudentVO étudiant) {
      students.remove (student.getRollNo ());
      System.out.println ( "Student: Rouleau Non" 
      + Student.getRollNo () + ", supprimé de la base de données");
   }

   // Récupérée de la liste des étudiants publics Liste <StudentVO> Les getAllStudents de base de données () {
      retour étudiants;
   }

   publique StudentVO getStudent (int rollNo) {
      retour students.get (rollNo);
   }

   updateStudent public void (StudentVO étudiant) {
      students.get (student.getRollNo ()) setName (student.getName ()) .;
      System.out.println ( "Student: Rouleau Non" 
      + Student.getRollNo () + ", mis à jour dans la base de données");
   }
}

Etape 3

UtilisezStudentBOpour démontrer les modèles de conception d'objets de transfert.

TransferObjectPatternDemo.java

public class TransferObjectPatternDemo {
   main (String [] args) {public static void
      StudentBO studentBusinessObject = new StudentBO ();

      // sortie tous les élèves pour (StudentVO étudiant: studentBusinessObject.getAllStudents ()) {
         System.out.println ( "Student: [RollNo:"
         + Student.getRollNo () + ", Nom:" + student.getName () + "]");
      }

      // Mise à jour étudiant StudentVO étudiant = studentBusinessObject.getAllStudents () get (0) .;
      student.setName ( «Michael»);
      studentBusinessObject.updateStudent (étudiant);

      // Obtenir étudiants studentBusinessObject.getStudent (0);
      System.out.println ( "Student: [RollNo:"
      + Student.getRollNo () + ", Nom:" + student.getName () + "]");
   }
}

Etape 4

Vérifiez la sortie.

Étudiant: [RollNo: 0, Nom: Robert]
Étudiant: [RollNo: 1, Nom: John]
Étudiant: Rouler No 0, mis à jour dans la base de données
Étudiant: [RollNo: 0, Nom: Michael]