Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Melaksanakan Pemeriksaan Ketersambungan Pangkalan Data Terikat Masa di Java?

Bagaimanakah Saya Boleh Melaksanakan Pemeriksaan Ketersambungan Pangkalan Data Terikat Masa di Java?

Patricia Arquette
Patricia Arquetteasal
2024-12-17 00:00:28465semak imbas

How Can I Implement Time-Bound Database Connectivity Checks in Java?

Semakan Ketersambungan Terikat Masa dalam Java

Matlamatnya adalah untuk mewujudkan pemasa yang, jika sambungan ke pangkalan data gagal dalam tempoh yang ditentukan tetingkap, memulakan pengecualian.

Pemasa Konfigurasi

Untuk memulakan pemasa dalam Java:

import java.util.Timer;
...
Timer timer = new Timer();

Untuk tugasan sekali:

timer.schedule(new TimerTask() {
  @Override
  public void run() {
    // Database connection code
  }
}, 2*60*1000);

Untuk tugasan berulang secara berkala:

timer.scheduleAtFixedRate(new TimerTask() {
  @Override
  public void run() {
    // Database connection code
  }
}, 2*60*1000, 2*60*1000);

Terhad Masa Pelaksanaan

Untuk mengehadkan pelaksanaan tugas kepada jangka masa tertentu:

ExecutorService service = Executors.newSingleThreadExecutor();

try {
    Runnable r = new Runnable() {
        @Override
        public void run() {
            // Database connection task
        }
    };

    Future<?> f = service.submit(r);

    f.get(2, TimeUnit.MINUTES); // Attempt the task for two minutes
}
catch (InterruptedException) {
    // Interrupted while waiting
}
catch (TimeoutException) {
    // Took longer than two minutes
}
catch (ExecutionException) {
    // Exception within the task
}
finally {
    service.shutdown();
}

Pendekatan ini memastikan bahawa tugasan itu akan sama ada selesai dengan jayanya atau membuang pengecualian kerana melebihi masa had. Harap maklum bahawa tugasan akan terus dilaksanakan selepas had masa, tetapi tugas itu akhirnya akan ditamatkan disebabkan sambungan atau tamat masa rangkaian.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Pemeriksaan Ketersambungan Pangkalan Data Terikat Masa di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn