zoukankan      html  css  js  c++  java
  • 面向接口编程和工厂模式

    UserDao---User类的数据库连接接口
    //MySQL Oracle,User类有MySQL和Oracle两种数据库连接方式可以实现
    CategoryDao---CategoryDao类的数据库连接接口
    //MySQL Oracle
    UsermysqlDao implements UserDao,UseroracleDao implements UserDao , UsermysqlDao 和UseroracleDao 是用户类连接不同数据库的实现类;

    A.需要完成的功能:
    若原来 User类使用Mysql数据库存储数据,当系统想要从原来使用Mysql数据库转移至Oracle数据库时,面向接口编程可以实现一种“添加而不是修改”的代码设计思想,可以将数据库连接方式定义成为一个接口,当要使用Mysql数据库时,通过:
    UserDao example = new UsermysqlDao();
    example.add();
    example.delete();来使用。
    当要使用Oracle数据库时,只需要定义一个UseroracleDao类实现UserDao接口即可添加Oracle数据库支持,原代码只需要改成:
    UserDao example = new CategorymysqlDao();
    example.add();
    example.delete();即可。

    B学习的两种工厂模式:
    1.
    Class DaoFactory{
    UserDao getUserDao(){根据情况return UsermysqlDao 或者 UseroracleDao}
    CategoryDao getCategoryDao(){根据情况return CategorymysqlDao 或者 CategoryoracleDao}
    }

    abstract DaoFactory 或 interface DaoFactory{
    UserDao getUserDao();
    CategoryDao getCategoryDao();
    }

    Class MySqlDaoFactory implements DaoFactory{
    UserDao getUserDao(){return UsermysqlDao}
    CategoryDao getCategoryDao(){return CategorymysqlDao}
    }

  • 相关阅读:
    Medical Image Report论文合辑
    Image Captioning 经典论文合辑
    深度学习及计算机视觉相关资源(不断积累中)
    Stylized Image Caption论文笔记
    Text Style Transfer论文笔记
    Unpaired/Partially/Unsupervised Image Captioning
    Simple BeamSearch Codes for Python
    Image Caption论文合辑2
    Image Captioning代码复现
    Image Paragraph论文合辑
  • 原文地址:https://www.cnblogs.com/akiradunn/p/5851576.html
Copyright © 2011-2022 走看看