从Postgres数据库触发器调用Java应用程序

时间:2018-06-23 18:35:15

标签: java database postgresql triggers

将记录插入,删除或更新到数据库表后,我正在尝试执行Java应用程序。为此,我打算编写一个触发器,该触发器将在插入时被调用。我的问题是,我可以从此触发器中调用Java应用程序吗?

1 个答案:

答案 0 :(得分:2)

Python Perl 等具有PL等效项,可以在 SQL 函数中编写(尽管有时会产生很大的开销),而 Java 却没有。即使 Java 应用程序可以通过命令行或触发器之后的某种方式启动,但仅启动 JVM 的开销也会造成性能损失。

我建议您考虑让 Postgres 通过notify发出通知。这样一来,您就可以发送可由客户端(该客户端可以是您的Java应用程序,或者是执行一些附加ETL为应用程序准备的中间程序)的侦听的有效负载(尽管有大小限制)。这应该允许以高效的方式提供和处理数据。