Transferir patrón de objeto en Java

Se usa cuando queremos pasar datos con múltiples atributos de una sola vez del cliente al servidor. Transfer Object es una clase POJO simple que tiene métodos getter/setter y se serializa para que pueda transferirse a través de la red. La clase empresarial del lado del servidor normalmente obtiene datos de la base de datos y llena el POJO y lo envía al cliente o lo pasa por valor. Para los clientes, el objeto de transferencia es de solo lectura. El cliente puede crear su propio objeto de transferencia y pasarlo al servidor para actualizar los valores en la base de datos de una sola vez. 

Las siguientes son las entidades de este tipo de patrón de diseño:

Objeto de transferencia POJO simple que tiene métodos para establecer / obtener atributos solo
 Objeto de negocio Rellena el Transfer Object con datos
Cliente Solicita o envía Transfer Object a Business Object

Acercarse:

  • Paso 1: crear un objeto de transferencia
  • Paso 2: Cree un objeto comercial.
  • Paso 3: use StudentBO para demostrar el patrón de diseño de objetos de transferencia
  • Paso 4: Verifique la salida.

Procedimiento: 

Paso 1: crear un objeto de transferencia 

Ejemplo

Java

// Transfer Object Pattern - Design Pattern
 
// Step 1
// Creating a Transfer Object
// randomly be named it 'StudentVO.java'
 
// Class StudentVO
public class StudentVO {
   
  // Member variables of class
   private String name;
   private int rollNo;
   
  // Creating a constructor of above class
  StudentVO(String name, int rollNo) {
     
    // This keyword for assignment
    // to same memory block created
    // for every name and roll number of student
    this.name = name;
      this.rollNo = rollNo;
   }
   
  // Getting name of student
   public String getName() {
      return name;
   }
   
  // Setting name of Student
   public void setName(String name) {
      this.name = name;
   }
   
  // Getting roll number of student
   public int getRollNo() {
      return rollNo;
   }
   
  // Setting roll number of student
   public void setRollNo(int rollNo) {
      this.rollNo = rollNo;
   }
}

Paso 2: Creación de un objeto comercial

Ejemplo 

Java

// Transfer Object Pattern - Design Pattern
 
// Step 2
// Creating a Busines object
// randomly be named it 'StudentBO.java'
 
// Importing List and ArrayList classes of
// java.util package
import java.util.ArrayList;
import java.util.List;
 
// Class StudentBO
public class StudentBO {
     
   // List is working as a database
   List<StudentVO> students;
   public StudentBO() {
  
      students = new ArrayList<StudentVO>();
      
     // Adding custom inputs
      StudentVO student1 = new StudentVO("Robert",0);
      StudentVO student2 = new StudentVO("John",1);
      students.add(student1);
      students.add(student2);       
   }
   
   public void deleteStudent(StudentVO student) {
      students.remove(student.getRollNo());
      System.out.println("Student: Roll No " + student.getRollNo() + ", deleted from database");
   }
   
   //retrieve list of students from the database
   public List<StudentVO> getAllStudents() {
      return students;
   }
   
   public StudentVO getStudent(int rollNo) {
      return students.get(rollNo);
   }
   
   public void updateStudent(StudentVO student) {
      students.get(student.getRollNo()).setName(student.getName());
      System.out.println("Student: Roll No " + student.getRollNo() +", updated in the database");
   }
}

Paso 3: use StudentBO para demostrar el patrón de diseño de objetos de transferencia

Implementación:  la lista actúa aquí como base de datos, como se muestra en la demostración del patrón de diseño de objetos de transferencia.

Ejemplo

Java

// Transfer Object Pattern - Design Pattern
// Step 3
 
// Use the StudentBO to demonstrate Transfer Object Design Pattern
// randomly be named it 'TransferObjectPatternDemo.java'
 
public class TransferObjectPatternDemo {
   
  // Main driver method
   public static void main(String[] args) {
      
      StudentBO studentBusinessObject = new StudentBO();
       
     // Print all students
      for (StudentVO student : studentBusinessObject.getAllStudents()) {
         System.out.println("Student: [RollNo : " + student.getRollNo() + ", Name : " + student.getName() + " ]");
      }
      
      // Update student
      StudentVO student = studentBusinessObject.getAllStudents().get(0);
      
     // Custom input 
     student.setName("Michael");
      studentBusinessObject.updateStudent(student);
       
     // Getting the student
      student = studentBusinessObject.getStudent(0);
      System.out.println("Student: [RollNo : " + student.getRollNo() + ", Name : " + student.getName() + " ]");
   }
}

Paso 4: Verificación de la salida 

Student : [RollNo : 0, Name : Robert ]
Student : [RollNo : 1, Name : John ]
Student : Roll No 0, updated in the database
Student : [RollNo : 0, Name : Michael ]

Publicación traducida automáticamente

Artículo escrito por krish_45 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *