[英]Database Poller Java EE/Spring/Hibernate
我在Spring Framework和Hibernate中使用Java EE。 我想編寫一個執行以下操作的非常簡單的數據庫輪詢器
我已經研究過Java的ScheduledExecutorService和ExecutorService ,並且我認為我可以用這些做我想做的事情。 我的問題是, Spring / Hibernate中是否內置了某些功能,可以更優雅地完成此操作?
一種替代方法是像這樣使用TaskScheduler:
1)使用TaskScheduler創建一個bean
@Bean
public TaskScheduler taskScheduler() {
ThreadPoolTaskScheduler threadPoolTaskScheduler = new ThreadPoolTaskScheduler();
threadPoolTaskScheduler.setPoolSize(50);
threadPoolTaskScheduler.setThreadNamePrefix("Scheduler-Pool-");
return threadPoolTaskScheduler;
}
2)使用CRON標記創建計划的作業
ScheduledFuture<?> scheduledFuture = taskScheduler.schedule(() -> aRunnable, new CronTrigger("0 0/5 * * * ?")); // per five seconds
3)當滿足條件或數據庫輪詢超時時,請禁用任務
scheduledFuture.cancel(false);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.