使用spring引导的数据库事件侦听器

使用spring引导的数据库事件侦听器,spring,spring-boot,spring-data-jpa,spring-data-mongodb,Spring,Spring Boot,Spring Data Jpa,Spring Data Mongodb,我需要将侦听器附加到db中的表 一旦在表中执行CRUD操作(前置侦听器和后置侦听器),它应该调用spring引导方法 可以从任何来源进行输入 如何在spring boot中做到这一点?解释了如何从DB触发器调用任何程序 因此,您只需创建一个Spring Boot java应用程序,并对您的应用程序进行sys调用 Oracle和其他数据库中也提供了类似的机制 如果实体可以从任何来源创建(例如手动插入),则这超出了正在运行的应用程序的范围和上下文 你所描述的就是所谓的模式 在这种情况下,要实现CDC

我需要将侦听器附加到db中的表 一旦在表中执行CRUD操作(前置侦听器和后置侦听器),它应该调用spring引导方法 可以从任何来源进行输入 如何在spring boot中做到这一点?

解释了如何从DB触发器调用任何程序

因此,您只需创建一个Spring Boot java应用程序,并对您的应用程序进行sys调用


Oracle和其他数据库中也提供了类似的机制

如果实体可以从任何来源创建(例如手动插入),则这超出了正在运行的应用程序的范围和上下文

你所描述的就是所谓的模式

在这种情况下,要实现CDC,您需要使用底层数据库的工具——例如触发器

正如我看到的,这是用MongoDb标记的-触发器不是一个选项,因为MongoDb不支持触发器

如果您使用的是MongoDb v3.6+,则可以利用新功能。这是Java的核心

允许应用程序访问实时数据更改 不存在跟踪的复杂性和风险。应用程序可以 使用更改流订阅单个服务器上的所有数据更改 收集、数据库或整个部署,并立即作出反应 对他们来说。因为变更流使用聚合框架, 应用程序还可以过滤特定的更改或转换 随意通知


如果您使用的是早期版本的MongoDb,您可以监视或使用capped collections。

我认为spring boot不会给您这种功能。您可以从JPA实体中获得这种行为。你需要换个地方看看!