2014-01-15 52 views
0

我有一個PostgreSQL數據庫,當插入表中的行時觸發NOTIFY mychannel如何使用Apache Camel接收PostgreSQL LISTEN/NOTIFY?

我想用Apache Camel將這些信息發送給各種來源(Twitter等)。

據我所知,可以使用JDBC並調用LISTEN mychannel來接收這些通知,但可能需要使用輪詢。

我對駱駝很新,所以不知道從哪裏開始。這是我會用SQL,JDBC或Polling Consumer連接器做什麼的嗎?

有沒有一種內置方法可以有效地在Camel中做到這一點?

+1

客戶端只能收到通知時,它積極地從服務器檢索的東西。所以你需要輪詢服務器的通知。 –

+0

PgJDBC中的底層接口在[PgJDBC文檔](http://jdbc.postgresql.org/documentation/92/listennotify.html)中討論。您需要原始JDBC'java.sql.Connection',然後將其轉換爲'PGConnection'並調用'getNotifications()'。如果Camel有其自己的支持,它將通過JDBC驅動程序中的該接口,因此請在Camel源代碼中查找'getNotifications'。 –

回答