Veri Erişim Nesnesi genellikle olarak bilinen desenler BIÇAK kalıplar, yüksek seviyeli iş hizmetlerini düşük seviyeli verilere erişim API'leri veya eylemlerden ayırmak için kullanılır. Veri Erişim Nesne Kalıbının üyeleri aşağıda listelenmiştir.
6'nın 10 kuvveti
Veri Erişim Nesnesi Arayüzü: Veri Erişim Nesnesi Arayüzü, bir model nesnesi/nesneleri üzerinde gerçekleştirilecek ortak işlemleri belirtir.
Somut Veri Erişim Nesnesi sınıfı: Bu sınıf yukarıda belirtilen arayüzü uygular. Bu sınıf, bir veritabanı, XML veya başka türde bir depolama sistemi olabilecek bir veri kaynağından veri elde etmekten sorumludur.
Model veya Değer Nesnesi: Bu nesne, DAO sınıfı kullanılarak elde edilen verileri depolamak için alma/ayarlama yöntemlerine sahip basit bir POJO'dur.
Uygulama
Bir öğrenci nesnesi oluşturulacak ve hem model hem de değer nesnesi olarak kullanılacaktır.
Veri Erişim Nesnesi Arayüzüne ÖğrenciDao adı verilir.
Somut sınıf ÖğrenciDaoImpl, Veri Erişim Nesnesi Arayüzünü uygular. ÖğrenciDao, demo sınıfımız DaoPatternDemo tarafından Veri Erişim Nesnesi modelinin nasıl kullanılacağını göstermek için kullanılacaktır.
Aşama 1:
Değer Nesnesi oluşturma.
S.java
piton içerir
public class S { private String n; private int r; S(String n, int r){ this.n = n; this.r = r; } public String getName() { return n; } public void setName(String n) { this.n = n; } public int getRollNo() { return r; } public void setRollNo(int r) { this.r = r; } }
Adım 2:
Veri Erişim Nesnesi Arayüzü oluşturma.
SD.java
import java.util.List; public interface SD { public List getAllStudents(); public S getStudent(int r); public void updateStudent(S s); public void deleteStudent(S s); }
Aşama 3:
Yukarıda belirtilen arayüzü uygulayan bir sınıf oluşturun.
SDI.java
import java.util.ArrayList; import java.util.List; public class SDI implements SD { // list is working as the database List ss; public SDI(){ ss = new ArrayList(); S s1 = new S('Sonoo',0); S s2 = new S('Jaiswal',1); ss.add(s1); ss.add(s2); } @Override public void deleteStudent(S s) { students.remove(s.getRollNo()); System.out.println(' Student: Roll No ' + student.getRollNo() + ', has been deleted from the database'); } // traversing list of students from the database @Override public List getAllStudents() { return ss; } @Override public S getStudent(int r) { return ss.get(r); } @Override public void updateStudent(S s) { ss.get(s.getRollNo()).setName(s.getName()); System.out.println(' Student: Roll No ' + student.getRollNo() + ', has been updated in the database'); } }
Adım 4:
Veri Erişim Nesnesi modelinin nasıl kullanılacağını göstermek için ÖğrenciDao'yu kullanın.
DPDemo.java
public class DPDemo { public static void main(String[] args) { SD sD = new SDI(); // print all the students for (S s : sD.getAllStudents()) { System.out.println('Student: [RollNo : ' + s.getRollNo() + ', Name : ' + s.getName() + ' ]'); } // update student S s =sD.getAllStudents().get(0); s.setName('JavaTpoint'); sD.updateStudent(s); //get the student sD.getStudent(0); System.out.println('Student: [RollNo : ' + s.getRollNo() + ', Name : ' + s.getName() + ' ]'); } }
Adım 5:
Sonuçları kontrol edin.
sistem.out.println