sql >> データベース >  >> NoSQL >> MongoDB

MongoSecurityExceptionをキャッチするにはどうすればよいですか?

    MongoSecurityExceptionはバックグラウンドスレッドでスローされるため、キャッチできません。

    MongoTimeoutExceptionが「同期的に」処理するのを待つことができます:

      MongoClientOptions clientOptions = new MongoClientOptions.Builder().serverSelectionTimeout(500).build();
        mongoClient = new MongoClient(serverAddress, Collections.singletonList(credential), clientOptions);
        try {
            String address = mongoClient.getConnectPoint();
            System.out.println(address);
        }catch (Throwable e){
            System.out.println(e);
        }
    

    または、ServerListenerを実装して、非同期で処理することもできます

    { 
    MongoClientOptions clientOptions = new MongoClientOptions.Builder().addServerListener(this).build();
    mongoClient = new MongoClient(host1, Collections.singletonList(credential), clientOptions);
    }
    
    @Override
    public void serverDescriptionChanged(ServerDescriptionChangedEvent event) {
        Throwable exception = event.getNewDescription().getException();
        handle(exception);
    }
    



    1. mongodbでクエリに参加する方法は?

    2. あるコレクションから別のコレクションへのmongoコピー(同じデータベース上)

    3. MongoDB C#ドライバーとDateTimeフィールド

    4. Spring Data MongoDB:集約フレームワーク-ネストされたプロパティで並べ替えると無効な参照がスローされます