JDBC a notify/listen

Horák Daniel horak na sitmp.cz
Čtvrtek Duben 3 14:23:52 CEST 2003


> 	Potreboval bych v Javovskem programu pripojenem pres 
> JDBC k PgSQL
> prubezne detekovat urcite zmeny v DB a reagovat na ne. 
> Predpokladam ze k
> tomuhle slouzi prikazy NOTIFY a LISTEN.
> 	Na strane DBMS je mi to celkem jasne - pres nejake 
> triggery spoustet
> NOTIFY. Za to je mi to ale naprosto nejasne na strane 
> aplikacniho programu v
> Jave. Jak se registrovat jako listener a hlavne, jak 

registrace se provede dotazem "LISTEN my_table" do pripojene DB

> naprogramovat nejakou
> metodu, aby se spoustela asynchronne pri zachyceni 
> notifikace? Jde to vubec
> v Jave vyuzit?

LISTEN -
http://www.postgresql.org/docs/view.php?version=7.3&idoc=1&file=sql-list
en.html
NOTIFY -
http://www.postgresql.org/docs/view.php?version=7.3&idoc=1&file=sql-noti
fy.html

jejich pouziti v libpq
http://www.postgresql.org/docs/view.php?version=7.3&idoc=1&file=libpq-no
tify.html

Pouziti pres JDBC zavisi na tom, jestli tato funkce vubec v JDBC
implementovana. U libpq to funguje tak, ze v ramci odpovedi serveru na
nejaky dotaz (i prazdny) se posila i seznam notifikaci, ktere mam
objednany. Tyto notifikace jsou pak pres API (funkce PQnotifies) cteny
klientskym programem.

Pohledem do aktualniho zdrojaku JDBC tam neco takoveho je (interface
org.postgresql.PGNotificaion a class org.postgresql.core.Notification a
kod v jdbc1/AbstractJdbc1Connection.java).


			Dan


Další informace o konferenci Databases