public interface MetadataEventListener
Modifier and Type | Method and Description |
---|---|
default void |
beforeAlterTable(String tablename,
TableMapping meta,
Connection conn,
List<String> sql)
框架根据表对比结果,生成SQL语句后触发此事件,用户事件中可以获得所有的SQL语句。
|
default boolean |
beforeTableRefresh(TableMapping meta,
String table)
当开始变更一张表时执行
|
default void |
onAlterSqlFinished(String tablename,
String sql,
List<String> sqls,
int n,
long cost)
每一句SQL语句执行完成后
|
default boolean |
onColumnsCompared(String tablename,
TableMapping meta,
Set<ColumnMapping> insert,
List<ColumnMapping> changed,
List<String> delete)
表结构比较完成后出发,提供了表的对比结果供用户判断。
在这个方法中,实现类可以直接修改传入的比较结果,让后续的程序按修改后的比较结果执行ALTER TABLE语句。 |
default boolean |
onCompareColumns(String tablename,
List<ColumnInfo> columns,
Map<DBField,ColumnMapping> defined)
开始进行表结构的比较
|
default boolean |
onSqlExecuteError(Exception e,
String tablename,
String sql,
List<String> sqls,
int n)
当某句SQL语句执行失败后触发
|
default boolean |
onTableCreate(TableMapping meta,
String tablename)
表不存在,将会创建表
|
default void |
onTableFinished(TableMapping meta,
String tablename)
表变更完成
|
default boolean beforeTableRefresh(TableMapping meta, String table)
meta
- 表的元数据table
- 数据库中的表名default boolean onTableCreate(TableMapping meta, String tablename)
meta
- 表的元数据tablename
- 数据库中的表名default boolean onColumnsCompared(String tablename, TableMapping meta, Set<ColumnMapping> insert, List<ColumnMapping> changed, List<String> delete)
tablename
- 表名meta
- 表的元数据insert
- 将要增加的数据库列(列名、数据类型)changed
- 数据格式发生了变更的列delete
- 将要删除的列default void beforeAlterTable(String tablename, TableMapping meta, Connection conn, List<String> sql)
tablename
- 表名meta
- 元数据conn
- 数据库连接sql
- 所有的SQL语句default void onAlterSqlFinished(String tablename, String sql, List<String> sqls, int n, long cost)
tablename
- 表名sql
- 刚完成的SQL语句sqls
- 所有SQL语句n
- 序号,第几句SQL,编号从0开始cost
- 刚才的SQL语句耗时(ms)default boolean onSqlExecuteError(Exception e, String tablename, String sql, List<String> sqls, int n)
e
- 异常tablename
- 表名sql
- 出错的SQL语句sqls
- 所有SQL语句n
- 出错的SQL语句序号default void onTableFinished(TableMapping meta, String tablename)
meta
- 表元数据tablename
- 表名default boolean onCompareColumns(String tablename, List<ColumnInfo> columns, Map<DBField,ColumnMapping> defined)
tablename
- 表名columns
- 数据库中的所有列defined
- 表模型中的所有列Copyright © 2020. All rights reserved.