如何用java制作数据库监听器?
大家好 我想做一些类似于触发器或侦听器(我不知道是什么)的事情,它将侦听特定的数据库表,并在该表上插入每条新记录时,执行一些java代码,我的意思是它检测到插入新记录并获取其数据(如果可能) 我需要一些关于如何完成此过程的指南?
我正在使用 Spring-Hibernate-PostgreSQL
Greetings all
I want to do something like a trigger or a listener (I don't know what) that will listen on a specific database table, and with each new record inserted on this table, do some java code, I mean that it detects that a new record was inserted and get it's data if it's possible
I need some guide about how this process can be accomplished ?
I am using Spring-Hibernate-PostgreSQL
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这就是 LISTEN/NOTIFY 的创建目的。
唯一的缺点是您需要某种后台线程定期轮询数据库以查看是否有任何通知可用。
您还可以使用 Postgres Wiki 中的代码作为起点
This is what LISTEN/NOTIFY was created for.
The only drawback is that you will need to have some kind of background thread that polls the database on a regular basis to see if any notifications are available.
You can also use the code from the Postgres Wiki to have a starting point
我假设您的意思是通过休眠代码添加数据库内容。
如果是这样,请参阅我之前的回答了解如何设置Hibernate 事件监听器 与春天。
否则,a-horse-with-no-name的答案 应该是最好的。
I assume you mean that the DB content is added through your hibernate code.
If so, consult this previous answer of mine for how to set up Hibernate Event Listeners with Spring.
Otherwise, a-horse-with-no-name's answer should be best.
您可以将 拦截器 添加到您的用于检测保存事件的 Hibernate 配置。
You could add an Interceptor to your Hibernate configuration to detect save events.