Search code examples
mysqljdbcuser-interfaceauto-update

Is there a way to listen for changes in an MySQL database table using Java and JDBC?


I have a number of users which are logged in at a time in my desktop application. They are working on the same table (create, read, update, delete data) so I have to update their views, to reflect changes, every few seconds - currently I am thinking to use a different thread to do that.

I am using the MySQL database engine.

Is there a way, using JDBC, to listen for changes on a specific table in the database and triggering a Java method only when changes are made?


Solution

  • No, mysql does not support sending async notifications to a client, nor does it have any ways of waiting for table changes.

    You'd have to build your own data access layer, where you support this in your code - and all data access would have to go through that same code.