一旦将记录插入、删除或更新到数据库表中,我将尝试执行我的 Java 应用程序。为此,我打算编写一个在插入时调用的触发器。我的问题是,我能否从此触发器调用 Java 应用程序?
最佳答案
虽然 Python 和 Perl 等有一个 PL
等价物,可以在 SQL 中编写函数(尽管有时会产生相当大的开销),Java 则没有。即使 Java 应用程序可以通过命令行或触发器后的其他方式启动,单独启动 JVM 的开销也会造成性能灾难。
我建议考虑让 Postgres 通过 notify 发出通知.这将允许您发送一个有效载荷(尽管有大小限制),客户端可以监听(该客户端可以是您的 Java 应用程序,或者执行一些额外的 ETL 以使其为您的应用程序做好准备的中间程序)。这应该允许以高效的方式提供和处理数据。
关于java - 从 Postgres 数据库触发器调用 Java 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51004045/