我们的代码使用的是MySQL DB。
现在我们的需求是将数据库从Mysql迁移到DB2。并且还使java代码与db2和mysql兼容。
我们正在使用JPA和mybatis来进行数据库工作。
请建议我什么将是更好的设计模式给。
如何让我的mybatis代码兼容mysql和db2?
谢谢,
发布于 2011-12-15 18:41:31
我建议你有一个单独的数据层。
让此数据层声明业务逻辑使用的公共接口和数据类型。
然后,您可以使用工厂模式创建实际的数据层实例,工厂模式创建用于连接到MySQL或DB2的具体类。通过这种方式,您可以在不更改业务代码的情况下更改数据库(因为所有代码都引用接口类型)。您甚至可以将其设置为在运行时执行此操作,比如基于配置设置。
例如:
IDataLayer是您的基类,包含用于获取/设置数据的方法(具体的数据库处理隐藏在其中)。
然后是MySQLDataLayer和DB2DataLayer子类。
业务逻辑只涉及IDataLayer,而不涉及MySQLDataLayer/DB2DataLayer类。
https://stackoverflow.com/questions/8518288
复制相似问题