Canal使用

使用TCP模式,可以监听确定的某个表

配置

pom依赖
<dependency>
    <groupId>top.javatoolgroupId>
    <artifactId>canal-spring-boot-starterartifactId>
    <version>1.2.1-RELEASEversion>
dependency>
yml配置
canal:
  destination: example
  server: 192.168.133.100:11111

使用

拦截监听到的属于这个表的配置

但是这里的更新监听拿到的before队形中的数据只有被修改的那一个数据,其他的都是空。

@CanalTable("tb_hotel")
@Service
@Slf4j
public class HotelHandler implements EntryHandler<Hotel> {

    @Override
    public void insert(Hotel hotel) {
        log.debug("Insert:{}", hotel);
    }

    @Override
    public void update(Hotel before, Hotel after) {
        log.debug("Update before:{}", before);
        log.debug("Update after:{}", after);
    }

    @Override
    public void delete(Hotel hotel) {
        log.debug("Delete:{}", hotel);
    }
}

你可能感兴趣的:(服务器,java,mysql)