WEB开发网
开发学院软件开发Java 基于模式的体系结构设计与开发: 第 1 部分:使用设... 阅读

基于模式的体系结构设计与开发: 第 1 部分:使用设计模式

 2010-01-22 00:00:00 来源:WEB开发网   
核心提示: 在此方案中,业务对象本身负责与基础数据库的通信,基于模式的体系结构设计与开发: 第 1 部分:使用设计模式(9),此方案有一些缺点: 业务逻辑和数据访问逻辑之间存在紧密耦合,如果基础数据库发生变化,只需要编写 DAO 的另一个实现(其中包括与新数据库通信所需的所有代码)即可,清单 5 显示了经过

在此方案中,业务对象本身负责与基础数据库的通信。

此方案有一些缺点:

业务逻辑和数据访问逻辑之间存在紧密耦合。

如果基础数据库发生变化,业务对象将受到影响。

最好将业务逻辑实现从数据访问逻辑实现拆分出来,使业务对象与数据访问逻辑独立。而这正是我们将要使用下一个设计模式完成的工作。

使用设计模式创建解决方案:“数据访问对象”模式

可以使用数据访问对象(Data Access Object,DAO)模式抽象和封装对数据源的所有访问。DAO 将对与数据源的连接进行管理,以获取和存储数据。图 7 显示了设计中使用 DAO 的情况。


图 7. 直接数据库通信
基于模式的体系结构设计与开发: 第 1 部分:使用设计模式

如清单 5 中所示,应用程序类并不需要知道其与之通信的实际数据库,只需要知道 DAO 接口的方法即可。DAO 实现类将包含数据库特定的逻辑。现在,如果希望使用不同的数据库,只需要编写 DAO 的另一个实现(其中包括与新数据库通信所需的所有代码)即可。清单 5 显示了经过简化的代码片段,用于调用为 Itinerary 类编写的 DAO 实现。


清单 5. 使用 DAO 消除数据库通信依赖关系
public class Itinerary implements Serializable{   
  // Attributes containing the details of Itinerary   
  public void saveItinerary(){ 
    // Leave the underlying detail of database communication to the DAO 
    ItineraryDAO dao = new ItineraryDAO(); 
    dao.saveItinerary(); 
  }   
} 

上一页  4 5 6 7 8 9 10  下一页

Tags:基于 模式 体系结构

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接