sql - 如何用Oracle触发器通知JBoss

标签 sql oracle hibernate jboss triggers

我需要实现以下内容:

有一个表 A,它应该被来自另一个表 B 上的触发器的 DML 操作更改。

我想在每次触发器工作时通知Jboss bean。在最好的情况下,我希望有机会查看 bean 中的旧数据和新数据。

最好的方法是什么?您能推荐一些阅读 Material 吗?

最佳答案

Alex 建议使用 Database Change Notification可能是最好的方法。 以下是从 Oracle PL/SQL 包(您可以从触发器调用)向 Java 进程发出事件信号的操作的一些其他选项:

  • 使用DBMS_PIPE异步向监听同一管道的 Java 客户端发送消息。
  • 使用DBMS_ALERT向监听目标警报的 Java 客户端发送消息。在事务提交之前不会收到该消息。
  • 使用UTL_HTTPUTL_SMTPUTL_TCP向监听目标 HTTP、SMTP 或 TCP 端点的 Java 进程发送消息。
  • 发送 Oracle/AQ JMS向监听目标队列/主题的 Java 客户端发送消息。
  • 使用 Java 创建 JMS 客户端并 load the java classes [和依赖项] 到 Oracle 数据库中。将类包装在 PL/SQL 过程中,并调用它来向监听目标队列/主题的 Java 客户端发出信号。

问题 Calling/Using JMS from PL/SQL 中有更多关于从 PL/SQL 发送 JMS 消息的信息。 .

关于sql - 如何用Oracle触发器通知JBoss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11062404/

相关文章:

java - 实体 - 从 session 中检索的两个实体是否具有相同的值

php - SQL 中跳过 0 和 NULL

oracle - 如何在 ORACLE 中的 VARCHAR 中转换 XMLTYPE?

java - JPA/Hibernate @MappedSuperclass 和@Inheritance(strategy = InheritanceType.JOINED) 关系

java - -Xss 和 -XX :ThreadStackSize? 有什么区别

java - ORACLE中与JPA复合PK出现ORA-00904错误

java - 无双向实体的 Hibernate 关系问题

sql - 如何从没有键的 JSON 字符串中提取值?

sql - 找出SQL Server中的调用存储过程

派生表的where子句中的mysql派生表