최고의 데이터 액세스 개체 패턴 튜토리얼 2024년, 이 튜토리얼에서는 실현,1 단계,2 단계,3 단계,4 단계,5 단계,를 배울 수 있습니다.
데이터 액세스 객체 모델 (객체 데이터 액세스 패턴) 또는 로우 레벨의 데이터 액세스 API에 대한 DAO 패턴 또는 고급 비즈니스 서비스의 동작으로부터 분리된다. 다음은 데이터 액세스 개체 패턴의 참가자입니다.
우리는학생 객체모델 객체 또는 값 객체를 생성합니다.StudentDao데이터 액세스 객체 인터페이스를 제공합니다.StudentDaoImpl 엔티티클래스는 데이터 액세스 오브젝트 인터페이스를 달성하는 것이다.DaoPatternDemo,우리의 데모 클래스는 사용의StudentDao데이터 액세스 개체 패턴의 사용을 설명합니다.
값 개체를 만듭니다.
Student.java
공용 클래스 학생 { 개인 문자열 이름; 개인 INT rollNo; 학생 {(문자열 이름, rollNo을 INT) this.name = 이름; this.rollNo = rollNo; } 공공 문자열 getName () { 이름을 반환; } 공공 무효에서는 setName (문자열 이름) { this.name = 이름; } 공공 INT getRollNo () { rollNo를 반환; } 공공 무효의 setRollNo (rollNo를 INT) { this.rollNo = rollNo; } }
데이터 액세스 객체 인터페이스를 만듭니다.
StudentDao.java
가져 오기를 java.util.List; 공용 인터페이스 StudentDao { 공개 목록 <학생> getAllStudents (); 공개 학생 getStudent (INT rollNo); 공공 무효 updateStudent (학생 학생) 공공 무효 deleteStudent (학생 학생) }
생성 엔티티 클래스는 상기 인터페이스를 구현한다.
StudentDaoImpl.java
수입 인 java.util.ArrayList; 가져 오기를 java.util.List; 공용 클래스 StudentDaoImpl는 StudentDao을 {구현 // 목록 목록 <학생> 학생 등의 데이터베이스입니다; 공공 StudentDaoImpl () { 학생 = 새로운 ArrayList를 <학생> (); 학생 student1 = 새로운 학생 ( "로버트", 0); 학생 student2 = 새로운 학생 ( "존", 1); students.add (student1); students.add (student2); } @Override 공공 무효 deleteStudent (학생 학생) { students.remove (student.getRollNo ()); 에서 System.out.println는 (:) (+ student.getRollNo "학생 없음 롤 없다" + ", 데이터베이스에서 삭제"); } // 데이터베이스 @Override 학생들의 목록을 검색 공개 목록 <학생> getAllStudents () { 학생들를 반환; } @Override 공개 학생 getStudent (rollNo를 INT) { students.get (rollNo)을 반환; } @Override 공공 무효 updateStudent (학생 학생) { students.get (student.getRollNo ())에서는 setName (student.getName ()); 에서 System.out.println는 (:) (+ student.getRollNo "학생 없음 롤 없다" + "데이터베이스에 업데이트"); } }
StudentDao는사용량 데이터 액세스 개체 패턴의 사용을 설명한다.
CompositeEntityPatternDemo.java
공용 클래스 DaoPatternDemo { 공공 정적 무효 메인 (문자열 []에 args) { StudentDao studentDao = 새로운 StudentDaoImpl (); 대한 // 출력 모든 학생 (학생 학생 : studentDao.getAllStudents ()) { 에서 System.out.println ( "학생 : [RollNo" + Student.getRollNo () + "이름 :"+ student.getName () + "]"); } // 업데이트 학생 학생 학생 = studentDao.getAllStudents () 취득 (0); student.setName ( "마이클"); studentDao.updateStudent (학생); // 학생을 받기 studentDao.getStudent (0); 에서 System.out.println ( "학생 : [RollNo" + Student.getRollNo () + "이름 :"+ student.getName () + "]"); } }
출력을 확인합니다.
학생 : [RollNo : 0 이름 : 로버트] 학생 : [RollNo : 1, 이름 : 존] 학생 : 데이터베이스에 업데이트 없음 0, 롤 없다 학생 : [RollNo : 0 이름 : 마이클]