我是Java项目的初学者,我想知道做某事的最佳方法。 我开发了一个桌面应用程序,它显示来自JTable中数据库中表的数据,当该表发生更改时,它必须显示以前的数据+新记录。
好吧,我做了一个帖子: 首先,Start,显示JTable中的所有数据,执行查询。 线程:注意数据库,执行不同于第一个查询的查询,每隔X秒。
假设执行查询后的每个连接都已关闭,但有时会出现此错误:
侦听器拒绝连接时出现以下错误:ORA-12519, TNS:找不到合适的服务处理程序
我已经读过一些关于它的内容超过了允许的最大进程数量,也可能我可以通过Poolable Connection解决它,但我不确定如何做到这一点。 有人可以帮我吗?
提前致谢!
答案 0 :(得分:0)
我不确定oracle,但我尝试了使用MS Access数据库的类似方法。我使用Timer和TimerTask类来安排我的进程在固定速率之后重复,而不是一个线程。 Timer类中有一个scheduleAtFixedRate方法,可以帮助您在线程池中安排任务。我认为这应该有所帮助。查看这些类的api以获取更多信息。 http://docs.oracle.com/javase/7/docs/api/java/util/Timer.html http://docs.oracle.com/javase/7/docs/api/java/util/TimerTask.html
答案 1 :(得分:0)
在我的研究中,我发现这些链接非常有趣:
https://jirawong.wordpress.com/2013/03/27/oracle-database-change-notification-jdbc-style-example/
Notification of Oracle table changes in Java
http://theblasfrompas.blogspot.com.es/2010/02/using-database-change-notification-dcn.html
http://docs.oracle.com/cd/E18283_01/java.112/e16548/dbchgnf.htm
我会努力尝试这样做。谢谢!