舉個例子,比如要做一個學生選課管理系統,資料庫中有三張表,分別是STUDENTS,TEACHER,COURSE
DAO層介面設計:
Interface StudentDAO
{
public void InsertStudent(Student stu) ;
public void removeStudent(long id) ;
public void updateStudent(Student stu) ;
public Student findStudent(long id) ;
/**
*其它DAO方法
**/
}
Interface TeacherDAO
{
public void insertTeacher(Teacher tea);
public void removeTeacher(long id) ;
public void updateTeacher(Teacher tea) ;
public Teacher findTeacher(long id) ;
/**
*其它DAO方法
**/
}
Interface CourseDAO
{
public void insertCourse(Course c);
public void removeCourse(long id) ;
public void updateCourse(Course c) ;
public Teacher findCourse(long id) ;
/**
*其它DAO方法
**/
}
業務層介面設計:
Interface StudentService
{
public void saveStudent(Student stu) ;
public void deleteStudent(long id) ;
public void updateStudent(Student stu) ;
public Student getStudent(long id) ;
/**
*其它Service方法
**/
}
Interface TeacherService
{
public void saveTeacher(Teacher tea);
public void deleteTeacher(long id) ;
public void updateTeacher(Teacher tea) ;
public Teacher getTeacher(long id) ;
/**
*其它Service方法
**/
}
Interface CourseService
{
public void saveCourse(Course c);
public void deleteCourse(long id) ;
public void updateCourse(Course c) ;
public Teacher getCourse(long id) ;
/**
*其它Service方法
**/
}
將這兩層介面寫好後分別建立它們的實作類別,比如:
public class StudentDAOImpl implements StudentDAO ;
public class StudentServiceImpl implements StudentService;
其中StudentServiceImpl中的方法調用StudentDAOImpl中的介面方法
其它類的寫法類似不再贅述。