MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Cara menangkap pengecualian saat membuat instance MongoClient

Koneksi server dibuat pada utas daemon. Singkat cerita, Anda tidak dapat memeriksa kesalahan terkait koneksi saat membuat Klien Mongo.

Anda harus menunda pemeriksaan koneksi saat membuat database nyata pertama yang melibatkan proses baca atau tulis.

Hanya untuk tujuan demonstrasi agar Anda mendapatkan ide.

MongoClient mongoClient = new MongoClient("127.0.34.1", 89);
DB db = mongoClient.getDB("test");
try {
   db.addUser("user", new char[] {'p', 'a', 's', 's'});
} catch(Exception e) { MongoTimeoutException exception}

MongoSocketOpenException dari Deamon Thread

INFO: Exception in monitor thread while connecting to server 127.0.34.1:89
com.mongodb.MongoSocketOpenException: Exception opening socket
at com.mongodb.connection.SocketStream.open(SocketStream.java:63)
at com.mongodb.connection.InternalStreamConnection.open(InternalStreamConnection.java:115)
at com.mongodb.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:116)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.ConnectException: Connection refused: connect

MongoTimeoutException dari Utas Utama

Exception in thread "main" com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting for a server that matches ReadPreferenceServerSelector{readPreference=primary}. Client view of cluster state is {type=UNKNOWN, servers=[{address=127.0.34.1:89, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, 
caused by {java.net.ConnectException: Connection refused: connect}}]
at com.mongodb.connection.BaseCluster.createTimeoutException(BaseCluster.java:375)

Jadi bungkus kode di blok coba tangkap dengan MongoTimeoutException dan itu akan berfungsi dengan baik untuk memeriksa kesalahan terkait koneksi.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB C#:Serialisasi ID pola terbaik

  2. Cara Migrasi Data Di MongoDB

  3. mongodb:bagaimana saya bisa melihat waktu eksekusi untuk perintah agregat?

  4. perintah mongo tidak dikenali saat mencoba terhubung ke server mongodb

  5. Apakah menerapkan indeks 2dsphere pada skema luwak memaksa bidang lokasi diperlukan?