Latest web development tutorials

Transfer Object Model

Transfer Object Model (Transfer Object Pattern) per un trasferimento una tantum di dati con più attributi dal client al server. oggetto di trasporto è anche conosciuto come gli oggetti di valore. Trasferire l'oggetto è un semplice metodi getter / setter classe POJO, è serializzabile, in modo che possa essere trasmessa attraverso la rete. Non ha un comportamento. Server Business class leggere in genere i dati dal database, e quindi riempire POJO, e lo invia al cliente o passarlo per valore. Per i clienti, l'oggetto di trasferimento è di sola lettura. I clienti possono creare il proprio oggetto del trasporto, e passarlo al server, al fine di aggiornare il database di valore di una volta. Di seguito è un'entità di questo modello di progettazione.

  • Oggetti commerciali (Business Object) - servizio di trasporto per i dati di riempimento oggetto di business.
  • Transfer Object (Transfer Object) - un semplice POJO, solo impostare / ottenere l'attributo metodo.
  • I clienti (clienti) - Il cliente può inviare una richiesta o inviare un oggetto di trasmissione per l'oggetto business.

realizzazione

Creeremo un oggetto business comeStudentBOe come oggetto di trasmissioneStudentVO,che rappresentano la nostra entità.

TransferObjectPatternDemo, lanostra classe demo qui come un client verrà utilizzato per dimostrareStudentBOestudente ditrasferimento modello di progettazione oggetto.

modello di trasferimento oggetto diagramma UML

fase 1

Creare un oggetto di trasferimento.

StudentVO.java

public class StudentVO {
   private String name;
   private int rollNo;

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

   public String getName () {
      Nome tornare;
   }

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

   public int getRollNo () {
      tornare rollNo;
   }

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

fase 2

Creare oggetti di business.

StudentBO.java

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

public class StudentBO {
	
   // List è un database come un elenco <> StudentVO studenti;

   StudentBO pubblico () {
      studenti = new ArrayList <StudentVO> ();
      StudentVO student1 = new StudentVO ( "Robert", 0);
      StudentVO student2 = new StudentVO ( "John", 1);
      students.add (student1);
      students.add (student2);		
   }
   deleteStudent public void (studente StudentVO) {
      students.remove (student.getRollNo ());
      System.out.println ( "Studente: Rotolo No" 
      + Student.getRollNo () + ", eliminati dal database");
   }

   // Estratto dalla lista banca dati degli studenti pubblici List <> StudentVO getAllStudents () {
      tornare gli studenti;
   }

   pubblico StudentVO getStudent (int rollNo) {
      tornare students.get (rollNo);
   }

   updateStudent public void (studente StudentVO) {
      students.get (student.getRollNo ()) setName (student.getName ()) .;
      System.out.println ( "Studente: Rotolo No" 
      + Student.getRollNo () + ", aggiornato nel database");
   }
}

fase 3

UtilizzareStudentBOper dimostrare i design pattern oggetto di trasferimento.

TransferObjectPatternDemo.java

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

      // output tutti gli studenti per (studente StudentVO: studentBusinessObject.getAllStudents ()) {
         System.out.println ( "Studente: [RollNo:"
         + Student.getRollNo () + ", nome:" + student.getName () + "]");
      }

      // Aggiornamento studente studente StudentVO = studentBusinessObject.getAllStudents () ottenere (0) .;
      student.setName ( "Michael");
      studentBusinessObject.updateStudent (studente);

      // Get studenti studentBusinessObject.getStudent (0);
      System.out.println ( "Studente: [RollNo:"
      + Student.getRollNo () + ", nome:" + student.getName () + "]");
   }
}

fase 4

Verifica uscita.

Studente: [RollNo: 0, Nome: Robert]
Studente: [RollNo: 1, nome: John]
Studente: Rotoli No 0, aggiornato nel database
Studente: [RollNo: 0, Nome: Michael]