後台發生變化時,可以通過實事件觸發或者是定時任務,此處用的是定時任務
1、websocketconfig配置類:
/**
* @program: wealth_management
* @description: websocketconfig配置類
* @author: sgq
* @create: 2019/04/23
*/@configuration
public class websocketconfig
}
2、websocketserver服務端,給前端呼叫:
/**
* @program: wealth.product.service
* @description: websocketserver核心類-實時獲取產品剩餘額度
* @author: sgq
* @create: 2019/05/15
*/@component
public class remainamountwebsocketserver
private productservice productservice;
private static int onlinecount = 0;
//concurrenthashmap的執行緒安全map,用來存放每個客戶端對應的mywebsocket物件。
private static concurrenthashmapsocketmap = new concurrenthashmap<>();
private static concurrenthashmaptaskmap = new concurrenthashmap<>();
//與某個客戶端的連線會話,需要通過它來給客戶端傳送資料
private session session;
/*** 連線建立成功呼叫的方法
*/@onopen
this.session = session;
try else
}}, new crontrigger("0/2 * * * * *"));
// 在關閉連線時關閉定時任務
} catch (exception e)
}/**
* 連線關閉呼叫的方法
*/@onclose
public void onclose()
}/**
* 收到客戶端訊息後呼叫的方法
** @param message 客戶端傳送過來的訊息
*/@onmessage
public void onmessage(string message, session session) catch (exception e) }}
/*** @param session
* @param error
*/@onerror
public void onerror(session session, throwable error)
/*** 實現伺服器主動推送
*/public void sendmessage(string message) catch (exception e)
}/**
* **自定義訊息
*/try
} else
} catch (exception e)
}public static synchronized int getonlinecount()
public static synchronized void addonlinecount()
public static synchronized void subonlinecount()
}
3、定時任務task:
/**
* @program: demo
* @description: 定時任務處理類
* @author: sgq
* @create: 2019/04/25
*/public class taskscheduler
/*** 啟動任務
**/public void startcron(runnable runnable, crontrigger crontrigger)
/*** 停止任務
**/public void stopcron()
}/**
* 變更任務間隔,再次啟動
**/public void changecron(runnable runnable, crontrigger crontrigger)
}
oracle定時任務例項
1 建立測試表與序列號 sql view plain copy print?create table job test id integer,add time date sql view plain copy print?create sequence seq tm id minvalue 1 ma...
spring boot 定時任務實現
scheduled 使用 scheduled 非常容易,直接建立乙個 spring boot 專案,並且新增 web 依賴 spring boot starter web,專案建立成功後,新增 enablescheduling 註解,開啟定時任務 enablescheduling 開啟定時任務 pu...
Spring定時任務實現
一 spring 定時任務 component enablescheduling 可以在啟動類上註解也可以在當前檔案 public class testschedule scheduled fixedrate 1000 10 public void runsecend scheduled fixed...