@@ -72,14 +72,16 @@ spring.datasource.password=12345678
7272实现并注册 ` DBEventPusher ` 接口,接收结构化的数据库变更事件:
7373
7474``` java
75- import com.codingapi.dbstream.DBStreamContext ;
76- import com.codingapi.dbstream.stream .DBEvent ;
77- import com.codingapi.dbstream.stream .DBEventPusher ;
75+
76+ import com.codingapi.dbstream.event .DBEvent ;
77+ import com.codingapi.dbstream.event .DBEventPusher ;
7878
7979// 在应用启动时注册事件推送器(如 @PostConstruct、@Configuration 等)
80- DBStreamContext . getInstance(). addEventPusher(new DBEventPusher () {
80+ DBStreamContext . getInstance().
81+
82+ addEventPusher(new DBEventPusher () {
8183 @Override
82- public void push (List< DBEvent > events ) {
84+ public void push (List < DBEvent > events ) {
8385 // 处理数据库变更事件
8486 for (DBEvent event : events) {
8587 System . out. println(" 表名: " + event. getTableName());
@@ -88,7 +90,7 @@ DBStreamContext.getInstance().addEventPusher(new DBEventPusher() {
8890 System . out. println(" 主键: " + event. getPrimaryKeys());
8991 System . out. println(" 事务标识: " + event. getTransactionKey());
9092 System . out. println(" 时间戳: " + event. getTimestamp());
91-
93+
9294 // 可以对接消息队列(如 Kafka、RocketMQ 等)
9395 // kafkaProducer.send(event);
9496 }
@@ -139,17 +141,21 @@ import com.codingapi.dbstream.scanner.DbTable;
139141
140142import java.util.Properties;
141143
142- public class DefaultDBTableSupportProvider implements DBTableSupportProvider {
144+ /**
145+ * 默认DB事件判断类
146+ * 规则为满足条件的全部支持
147+ */
148+ public class DefaultDBEventSupporter implements DBEventSupporter {
143149
144150 @Override
145151 public boolean support(Properties info, DbTable dbTable) {
146- // 所有表都会监听
147- return true;
152+ return true;
148153 }
149154}
150155
156+
151157// 添加 SQL 表执行判断
152- DBStreamContext.getInstance().setDbTableSupportProvider (new DefaultDBTableSupportProvider ());
158+ DBStreamContext.getInstance().setDbEventSupporter (new DefaultDBEventSupporter ());
153159```
154160
155161根据表名等信息来决定是否进行数据事件解析。仅当返回true的才会进行事件推送。DefaultDBTableSupportProvider为默认的实现机制。
@@ -207,7 +213,7 @@ DBStreamContext.getInstance().addListener(SQLExecuteListener listener);
207213
208214``` java
209215// 添加 SQL 表执行判断
210- DBStreamContext . getInstance(). setDbTableSupportProvider( DBTableSupportProvider dbTableSupportProvider );
216+ DBStreamContext . getInstance(). setDbEventSupporter( DBEventSupporter dbEventSupporter );
211217```
212218
213219#### 元数据管理
0 commit comments