3.1.3 通过反射增强工厂方法

普通工厂方法 是将在编译时构造类并返回的,当修改数据库访问 Facade 实现后,需要将整个应用重新编译,或者打补丁。

上节通过动态加载、反射构造实现工厂方法,避免重新编译应用,如果有新的 Facade 实现,只需如下两步就能将应用中的数据库访问代码 替换为其他实现

  1. Facade 实现类编译后的 .class 文件放在应用的 classpath 中。
  2. 修改系统配置文件,将 db.class 的值改为 Facade 实现类的 全限定名

上述操作 无需重新编译,但要 重新启动 应用,以加载新的 Facade 实现类。

results matching ""

    No results matching ""