java資料庫監聽
可以使用ContentObserver對象監聽,如下:
public final void registerContentObserver(Uri uri, boolean notifyForDescendents, ContentObserver observer)
功能:為指定的Uri注冊一個ContentObserver派生類實例,當給定的Uri發生改變時,回調該實例對象去處理。
參數:uri 需要觀察的Uri(需要在UriMatcher里注冊,否則該Uri也沒有意義了)
notifyForDescendents 為false 表示精確匹配,即只匹配該Uri
為true 表示可以同時匹配其派生的Uri,舉例如下:
假設UriMatcher 里注冊的Uri共有一下類型:
1 、content://com.qin.cb/student (學生)
2 、content://com.qin.cb/student/#
3、 content://com.qin.cb/student/schoolchild(小學生,派生的Uri)
假設我們當前需要觀察的Uri為content://com.qin.cb/student,如果發生數據變化的 Uri 為
content://com.qin.cb/student/schoolchild ,當notifyForDescendents為 false,那麼該ContentObserver會監聽不到,
但是當notifyForDescendents 為ture,能捕捉該Uri的資料庫變化。
② 如何用java監聽 資料庫某張表的變化
ajax 輪訓,HTML5 websocket 觸發器是在資料庫端的,實現不了你的要求。
ajax輪訓每隔幾秒就查詢一次,保存上次的總條數,然後下次只要不一樣了就彈窗。
你這個對伺服器壓力很大(如果用戶很多的話)
③ JAVA如何監聽資料庫
這么長時間沒人回答,想必是你沒有表達清楚你的思想吧,寫一個監聽數據的類,我不知道你要做什麼項目呢?我不知道有什麼更好的方法來做你這個問題,但可以寫一個循環方法,這個循環呢,每隔一段時間執行一次,這個可以用Thread.sleep(5000);來實現,執行到這句呢,程序就會停止五秒後再去執行它下面的語句,循環體里就是用來查詢資料庫中的數據,與上次取出的值對比,這樣不停的去查詢、比較,你可以說說你這種思想用來做什麼的,讓大家看看你到底想干什麼,看看大家有什麼更好的思路來幫你解決問題沒?
④ java能夠實現對資料庫的監聽嗎
你只能監控從JAVA端對資料庫的操作(CURD),可統一在切面攔截時進行寫日誌的操作,如果要監控用戶通過第三方軟體連接到資料庫的操作,你只能讀取MYsql日誌進行分析了。
⑤ java如何實現:一個一直在運行的監聽程序,每當監聽到數據,就把數據發給jsp頁面
方法1:可以利用ServletContext類的對象application解決,這個屬於整個web應用都公用的內部對象。例如在監聽器中
public class GetConnListener implements ServletContextListener {
//例如這個是要傳的數據
String data="0";
//當此web應用被訪問後啟用該方法
public void contextInitialized(ServletContextEvent sce) {
//創建application
ServletContext application=sce.getServletContext();
//將數據存入application的屬性中
application.setAttribute("Data",data);}
然後再JSP頁面,的JSP腳本中寫入
String data=(String)sapplication.getAttribute("Data");
out.print(data);
就能狗獲取和輸出這個數據了。
方法二便是直接在JAVA中把數據存入資料庫,JSP從資料庫中讀出數據。
⑥ java有什麼方法可以監聽資料庫
如果你要用JDBC來監聽資料庫變化的話,你要比較的話就需要在本地創建一個資料庫快照,這樣是非常非常浪費資源的。
如果你非要監聽也是有辦法的,你可以將CachedRowSet介面和timer結合起來實現你想要的功能。
⑦ java資料庫連接JUI事件監聽
//得到JLabel用戶輸入的值
textn=...
//拼sql語句
sql = insert into table() values();
//獲取資料庫連接
Connection conn = MySQLText.dbConn();
//將數據插入資料庫
MySQLText.dbUpdate(sql);
另外,依我個人的建議:
static Statement stmt=null;
static ResultSet rs=null;
把Statement, ResultSet 做為類變數不妥吧,很容易出現並發問題。建議把它們作為局部變數。一個Statement一次只能使用一個ResultSet的,用完就要關閉。
⑧ java么監聽資料庫中數據的變化
簡單的辦法就是不斷讀取要監聽的數據,如果有改變,就讀取出來。
⑨ 如何用java監聽資料庫變化
可以使用ContentObserver對象監聽,如下:
public final void registerContentObserver(Uri uri, boolean notifyForDescendents, ContentObserver observer)
功能:為指定的Uri注冊一個ContentObserver派生類實例,當給定的Uri發生改變時,回調該實例對象去處理。
參數:uri 需要觀察的Uri(需要在UriMatcher里注冊,否則該Uri也沒有意義了)
notifyForDescendents 為false 表示精確匹配,即只匹配該Uri
為true 表示可以同時匹配其派生的Uri,舉例如下:
假設UriMatcher 里注冊的Uri共有一下類型:
1 、content://com.qin.cb/student (學生)
2 、content://com.qin.cb/student/#
3、 content://com.qin.cb/student/schoolchild(小學生,派生的Uri)
假設我們當前需要觀察的Uri為content://com.qin.cb/student,如果發生數據變化的 Uri 為
content://com.qin.cb/student/schoolchild ,當notifyForDescendents為 false,那麼該ContentObserver會監聽不到,
但是當notifyForDescendents 為ture,能捕捉該Uri的資料庫變化。
⑩ JAVA ssh框架如何監聽資料庫發生變化
1、定時任務,對比資料庫
2、提供介面,操作資料庫時調用此介面,推送變化通知