Object voor gegevenstoegang patronen, vaak bekend als MES patronen, worden gebruikt om zakelijke services op hoog niveau te scheiden van API's of acties op laag niveau voor gegevenstoegang. De leden van het Data Access Object Pattern worden hieronder vermeld.
invoegsorteringsalgoritmen
Objectinterface voor gegevenstoegang: De Data Access Object Interface specificeert de algemene bewerkingen die op een modelobject (en) moeten worden uitgevoerd.
Objectklasse concrete gegevenstoegang: Deze klasse implementeert de bovengenoemde interface. Deze klasse is verantwoordelijk voor het verkrijgen van gegevens uit een gegevensbron, bijvoorbeeld een database, XML of een ander type opslagsysteem.
Model- of waardeobject: Dit object is een eenvoudige POJO met get/set-methoden voor het opslaan van gegevens die zijn verkregen met behulp van de DAO-klasse.
Implementatie
Er wordt een studentenobject gemaakt en gebruikt als model en als waardeobject.
Data Access Object Interface heet StudentDao.
De betonklasse StudentDaoImpl implementeert de Data Access Object Interface. StudentDao zal worden gebruikt door DaoPatternDemo, onze demoklasse, om te laten zien hoe u het Data Access Object-patroon kunt gebruiken.
Stap 1:
Waardeobjectcreatie.
generator van willekeurige getallen in c
S.java
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; } }
Stap 2:
Creatie van objectinterface voor gegevenstoegang.
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); }
Stap 3:
Construeer een klasse die de bovengenoemde interface implementeert.
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'); } }
Stap 4:
Gebruik de StudentDao om te illustreren hoe u het Data Access Object-patroon gebruikt.
volgende scanner
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() + ' ]'); } }
Stap 5:
Controleer de resultaten.