DAO设计模式界面

时间:2014-08-29 15:48:58

标签: design-patterns

这种设计模式是否仅适用于一个界面,因为我能找到的只是谈论由类实现的接口?

像网站一样 http://www.tutorialspoint.com/design_pattern/data_access_object_pattern.htm

如果我有很多接口,设计模式可以使用,类图是谁?

谢谢。

2 个答案:

答案 0 :(得分:0)

实际上,设计模式只为您提供解决方案和抽象,而不是限制您使用某些具体实现。您可以使用最适合您的逻辑,并自由组合部件以实现您的目标。

关于

  

此设计模式是否仅适用于一个界面

您可以考虑使用SOLID原则之一 - Interface_segregation并仍然重复使用DAO模式。

希望这会对你有所帮助。

  • 干杯

答案 1 :(得分:0)

界面的使用是隐藏实现细节,对于这个简单的界面,StudentDao可以创建/更新/读取/删除Student,用户不必知道如何实现这些功能。 对于一个mysql数据库,也许我有一个MysqlStudentDao,对于一个oracle数据库,我可以实现一个OracleStudentDao,有一天,如果我想使用lucene,我甚至可以拥有一个LuceneStudentDao;但对于用户来说,它只需要知道,我使用的是具有以下功能的StudentDao:

public List<Student> getAllStudents();
public Student getStudent(int rollNo);
public void updateStudent(Student student);
public void deleteStudent(Student student);