正在加载图片...
ooAD大报告之 Petstore中EB的设计模式分析 2.1.3.结构 它使用了GOF中的 Bridge和 Adapter模式。整个结构图如下 Client Obed《 <uses accesses emerton Bridge: Abstraction DAOImplement orB oid data AccessMethod 10 roid data AccessMathod10 Moid dataAccessMethod20 oid data AccessMethod 20 ResourceA oid dataAccessMMethod A1o oid data AccessMethod 81o 大家可能看明白,其实就是在 Business0 bject中提供了业务逻辑方法,假如它必须要读取数据,但 是这个数据可能存在 Oracle数据库中,又有可能存在 excel文件中,也许存在ⅫL文件中,如果我 们在这个方法中直接读取数据,那就要写这样的语句 switch (DATA TYPE)( case ORACLe 通过JDBC读取 Oracle数据 case excel 通过专门的API进行读取, Excel文件 case 通过JDOM进行,分析MM文件; 这样,业务逻辑中到处是数据的读取,并且修改程序,很麻烦。于是这些牛人,想出一个使用 接口DA0(就是 DataAccessObject),它什么具体的事都不做,就申明几个方法,在业务逻辑类中 只管调用它就行了,好像在说我能做什么,不要管我怎样做,就想我们的销售接项目一样,说我们 公司什么事都可以做。但是项目接下以后,就由我们这些命苦的开发人员来实现。最后也就是 DA0 Implementor根据数据的不同有不同的具体类来读取(它有可能是 DAOImplementor ORACLE类实 现读取0 racle数据库, DAOImplementor EXCel,实现通过API读取Exce文件, DAOImplementor xh 实现读取ⅫML文件)。这样你可以在业务逻辑类中,不负责数据的读取,只关注业务逻辑的实现, 它只需调用DA0获得数据,真正实现数据的读取是DA0 Implementor_ ORACLE这样的类。 作者:张玉平,吴小静,范赟梦,张麒,罗晟,张翅 5OOAD 大报告之 PetStore 中 EJB 的设计模式分析 作者: 张 玉 平 , 吴 小 静 , 范 赟 梦 , 张麒,罗晟, 张 翅 5 2.1.3. 结构 它使用了GOF 中的Bridge 和Adapter 模式。整个结构图如下: 大家可能看明白,其实就是在BusinessObject 中提供了业务逻辑方法,假如它必须要读取数据,但 是这个数据可能存在Oracle 数据库中,又有可能存在excel 文件中,也讲存在XML 文件中,如果我 们在这个方法中直接读取数据,那就要写这样的诧句 switch (DATA_TYPE){ case ORACLE: 通过JDBC 读取Oracle 数据 break; case Excel: 通过与门的API 迚行读取,Excel 文件 break; case XML 通过JDOM 迚行,分析XML 文件; break; } 这样,业务逻辑中到处是数据的读取,并丏修改程序,很麻烦。于是这些牛人,想出一个使用 接口DAO(就是DataAccessObject),它什么具体的事都丌做,就申明几个方法,在业务逻辑类中, 叧管调用它就行了,好像在说我能做什么,丌要管我怎样做,就想我们的销售接项目一样,说我们 公司什么事都可以做。但是项目接下以后,就由我们这些命苦的开发人员来实现。最后也就是 DAOImplementor 根据数据的丌同有丌同的具体类来读取(它有可能是DAOImplementor_ORACLE 类实 现读取Oracle 数据库,DAOImplementor_EXCEL, 实现通过API 读取Excel 文件,DAOImplementor_XML 实现读取XML 文件)。这样你可以在业务逻辑类中,丌负责数据的读取,叧关注业务逻辑的实现, 它叧需调用DAO 获得数据,真正实现数据的读取是DAOImplementor_ORACLE 这样的类
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有