mysql数据库表中插入一行新纪录时,调用一个java程序

时间:2023-01-06 21:40:34
mysql数据库表中插入一行新纪录时,想要通知调用一个java程序,在网上查了下,说可以使用触发器,监听数据表中的变化,但是触发器器能直接调用外部的java程序吗,如果可以,该怎么做。或者说除了触发器以外,有好的其他方法,有想过去轮训数据库,但经常访问数据库效率太差了,所以想看看有没有其他的实现方法

8 个解决方案

#1



oracle的应该可以,你参考一下这两个链接:
http://bbs.csdn.net/topics/300247045
http://blog.csdn.net/qiuzhuoxian/article/details/5679602

mysql的即使能实现,估计也很难;

#2


引用 1 楼 u012724379 的回复:
oracle的应该可以,你参考一下这两个链接:
http://bbs.csdn.net/topics/300247045
http://blog.csdn.net/qiuzhuoxian/article/details/5679602

mysql的即使能实现,估计也很难;

但我用的数据库就是mysql的啊,请问有没有其他方法

#3


用一个java程序循环扫描,发现有新增记录,则调用指定的方法。

#4


这种貌似还是轮询的方案了

#5


mysql数据库表中插入一行新纪录,新纪录是由java程序去插入的还是通过存储过程之类的
如果是经过java程序去插入的,在插入完成后就去调用需要触发的java程序
如果是存储过程之类的,不经过java代码,那估计就是楼上们说的定时去扫描了

#6


楼上正解,java程序的话可以成功后返回一个值
然后再去调用方法

#7


同意楼上的楼上的意见。
hibernate好像就有这个功能,叫监听器还是什么来着

#8


嗯,如果是通过Java程序插入的话,可以根据返回结果调用其他的Java程序,如果是存储过程的话,在我的认知范围内可能就只能通过轮询数据库去实现了

#1



oracle的应该可以,你参考一下这两个链接:
http://bbs.csdn.net/topics/300247045
http://blog.csdn.net/qiuzhuoxian/article/details/5679602

mysql的即使能实现,估计也很难;

#2


引用 1 楼 u012724379 的回复:
oracle的应该可以,你参考一下这两个链接:
http://bbs.csdn.net/topics/300247045
http://blog.csdn.net/qiuzhuoxian/article/details/5679602

mysql的即使能实现,估计也很难;

但我用的数据库就是mysql的啊,请问有没有其他方法

#3


用一个java程序循环扫描,发现有新增记录,则调用指定的方法。

#4


这种貌似还是轮询的方案了

#5


mysql数据库表中插入一行新纪录,新纪录是由java程序去插入的还是通过存储过程之类的
如果是经过java程序去插入的,在插入完成后就去调用需要触发的java程序
如果是存储过程之类的,不经过java代码,那估计就是楼上们说的定时去扫描了

#6


楼上正解,java程序的话可以成功后返回一个值
然后再去调用方法

#7


同意楼上的楼上的意见。
hibernate好像就有这个功能,叫监听器还是什么来着

#8


嗯,如果是通过Java程序插入的话,可以根据返回结果调用其他的Java程序,如果是存储过程的话,在我的认知范围内可能就只能通过轮询数据库去实现了