簡體   English   中英

在Java中實現彩票系統以從mysql實時獲取記錄

[英]Implementing lottery system in java fetching records from mysql in real time

我受命制作一個Java彩票系統,該系統從數據庫中獲取手機號碼,然后在textview中顯示。 系統將按以下方式工作: 1用戶單擊“開始”按鈕,系統將開始以非常快的速度隨機獲取手機號碼,大約每秒10次,然后當他們單擊“停止”按鈕時,系統停止獲取信息,當前顯示的手機號碼獲勝,我的解決方案是使用計時器,等待100 miliseconds或者在可能的情況下實時

    ScheduledExecutorService exec = Executors.newSingleThreadScheduledExecutor();
      exec.scheduleAtFixedRate(new Runnable() {
      @Override
       public void run() {
   // fetch from database
       }
     }, 0, 100, TimeUnit.MILLISECONDS);

    }

但是我的問題是連接數據庫有時會導致開銷,如何避免這種情況? 我可以預先獲取或記錄,然后將它們存儲在arraylist中,但是如果數據庫中又有數百萬條記錄會導致內存問題,該怎么辦?

您需要一種使連接一次然后再重用的解決方案,如下所示:

// when user presses START:
make DB connection
WHILE user has not pressed stop yet DO
    execute query to retrieve a number
    wait 100ms
ENDWHILE
close connection

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM