Latest web development tutorials

Data Access Object Pattern

Data Access Object Model (Data Access Object Pattern) oder DAO-Muster für den Low-Level-Datenzugriff API oder aus dem Betrieb von hochwertigen Dienstleistungen getrennt. Im Folgenden ist ein Teilnehmer im Objektmuster Data Access.

  • Schnittstelle Data Access Objects (Data Access Object Interface) - Diese Schnittstelle definiert die Standardoperationen auf einem Modellobjekt ausgeführt werden.
  • Data Access Objects Entitätsklassen (Data Access Object konkrete Klasse) - Diese Klasse die oben genannten Schnittstellen implementiert.Diese Klasse ist für die Daten aus der Datenquelle erhalten, kann die Datenquelle eine Datenbank sein, es kann XML oder einem anderen Speichermechanismus sein.
  • Modellobjekt / Wert - Objekte (Modellobjekt / Value Object) -Das Objekt einfache POJO ist, umfasst / Set - Methoden erhalten zum Speichern von DAO - Klassen Daten abzurufen.

Realisierung

Wir werden einStudentenobjektmodell- Objekt oder Wertobjekt als erstellen.StudentDaoDatenzugriffsobjekt - Schnittstelle.StudentDaoImplEntity - Klasse ist ein Datenzugriffsobjekt - Schnittstelle zu erreichen.DaoPatternDemo,unsere Demonstration Klasse die Verwendung vonStudentDaoData Access Object Muster der Nutzung zu demonstrieren.

Data Access Object Muster UML-Diagramm

Schritt 1

Erstellen Sie ein Wertobjekt.

Student.java

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

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

   public String getName () {
      Rückkehr Name;
   }

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

   public int getRollNo () {
      Rückkehr rollNo;
   }

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

Schritt 2

Erstellen Sie eine Datenzugriffsobjekt-Schnittstelle.

StudentDao.java

Import java.util.List;

public interface StudentDao {
   public List <Schüler> getAllStudents ();
   Public Schüler getStudent (int rollNo);
   public void updateStudent (Student Student);
   public void deleteStudent (Student Student);
}

Schritt 3

Erstellen von Entity-Klasse implementiert die oben genannten Schnittstellen.

StudentDaoImpl.java

Import java.util.ArrayList;
Import java.util.List;

public class StudentDaoImpl implementiert StudentDao {
	
   // Liste ist eine Datenbank als Liste <Schüler> Schüler;

   public StudentDaoImpl () {
      Studenten = new Arraylist <Studenten> ();
      Student student1 = new Student ( "Robert", 0);
      Student student2 = new Student ( "John", 1);
      students.add (student1);
      students.add (student2);		
   }
   @Override
   public void deleteStudent (Student Student) {
      students.remove (student.getRollNo ());
      System.out.println ( "Student: Rollen Nein" + student.getRollNo () 
         + ", Gelöschte aus der Datenbank");
   }

   Abrufen // die Liste der Studenten aus der Datenbank @Override
   public List <Schüler> getAllStudents () {
      Rückkehr Studenten;
   }

   @Override
   Public Schüler getStudent (int rollNo) {
      Rückkehr students.get (rollNo);
   }

   @Override
   public void updateStudent (Student Student) {
      students.get (student.getRollNo ()) setName (student.getName ()) .;
      System.out.println ( "Student: Rollen Nein" + student.getRollNo () 
         + ", Aktualisiert in der Datenbank");
   }
}

Schritt 4

StudentDaodie Nutzung des Datenzugriffsobjektmuster von Nutzungs zu demonstrieren.

CompositeEntityPatternDemo.java

public class DaoPatternDemo {
   public static void main (String [] args) {
      StudentDao studentDao = new StudentDaoImpl ();

      // Ausgabe alle Studenten für (Student Student: studentDao.getAllStudents ()) {
         System.out.println ( "Student: [RollNo:"
            + Student.getRollNo () + ", Name:" + student.getName () + "]");
      }


      // Update-Student Student Student = studentDao.getAllStudents () erhalten (0) .;
      student.setName ( "Michael");
      studentDao.updateStudent (Student);

      // Get Studenten studentDao.getStudent (0);
      System.out.println ( "Student: [RollNo:"
         + Student.getRollNo () + ", Name:" + student.getName () + "]");		
   }
}

Schritt 5

Stellen Sie sicher, ausgegeben.

Student: [RollNo: 0, Name: Robert]
Student: [RollNo: 1, Name: John]
Student: Rollen Nein 0, in der Datenbank aktualisiert
Student: [RollNo: 0, Name: Michael]