adapter实现约定

最后更新:2023-12-10 10:29:03 | 状态:未完成
继承关系
DriverAdapter
JDBCAdapter
OracleGenusAdapter
OracleAdapter
Oracle11Adapter
DMAdapter

PostgresGenusAdapter
PostgresAdapter
HighgoAdapter

DocumentAdapter
MongoAdapter


SearchAdapter ElasticSearchAdapter




大部分数据库都是基于mysql/pg/oracle等几个系列,所以在anyline-data-jdbc中提供了OracleGenusAdapter,PostgresGenusAdapter等几个系列的父类

具体的adapter一般都可以从这几个父类继承,只需要实现极个别的特性方法。

实现的时候复制TemplateJDBCAdapter修改类名、数据库类型,不需要覆盖的方法了不要删除,务必保持原有方法顺序,只实现需要覆盖的几个方法

不要轻易在子类中实现方法,尽量把不同部分拆到子类,相同部分抽到父类。
如不同数据库添加列语法
alter table sso_user add column code int
alter table sso_user add code int

要把主体方法放在父类,add column与add拆出来放到中由父类调用。
让父类控制主流程,子类实现细节差异。子类不要参考流程控制。

否则后期重构,修改子类工作量太大,并且很难保持所有子类风格流程一致


所有子类保持命名、顺序、参数、主流程完全一致

不实现的方法也要放到子类,现在不需要实现以后可能因为特性需要实现,后期实现时再加添容易打乱顺序,代码不好阅读。 空格换行注释都要不动,后期需要全局替换

不要追求jar文件体积小,同样的不要因为启动慢个几秒过度优化过度配置。同样的不要迎合设计模式。

最近更新 搜索 提交