Tôi tìm thấy là để lấy RowId. Từ queryChangeDescription bạn có thể lấy TabeleChangeDesciptions không có gì chung với TableChangeDecription từ sự kiện. Nếu có thay đổi trên nhiều Bảng, các bảng này sẽ được liệt kê trong Mảng. Vì tôi chỉ đăng ký một Bảng nên tôi không phải lặp lại danh sách.
Sau khi hack TableChangeDescription bạn có thể lấy RowChangeDescription cho mỗi hàng đã thay đổi. Từ đó, bạn có thể nhận RowId.
for (QueryChangeDescription queryChangeDescription : databaseChangeEvent.getQueryChangeDescription()) {
RowChangeDescription[] rowChangeDescriptions = queryChangeDescription.getTableChangeDescription()[0].getRowChangeDescription();
for (RowChangeDescription rowChangeDescription : rowChangeDescriptions) {
handleEvent(rowChangeDescription.getRowid());
}
}