Как отловить исключения Mongodb в Java?

Привет, у меня есть следующий код, в котором я подключаюсь к базе данных, но я никак не могу зафиксировать исключения, представленные драйвером Монго

import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.MongoSocketOpenException;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;

/**
 *
 * @author personal
 */
public class mongodb {

    private MongoClient mongoClient;
    private MongoDatabase database;
    private MongoCollection<Document> collection;

    public mongodb() {

        try {
            mongoClient = new MongoClient("localhost", 27017);
            database = mongoClient.getDatabase("ferreteria");

        } catch (MongoSocketOpenException e) {
            System.out.println("Error al conectarse con la base de datos");
        }
    }

    public MongoCollection<Document> getCollection(String tabla) {

        try {
            return collection = database.getCollection(tabla);
        } catch (MongoException e) {
            return null;
        }

    }

    public static void main(String[] args) {
        mongodb conexion = new mongodb();

       MongoCollection<Document> productos = conexion.getCollection("productos");
//        Document doc = new Document("name", "MongoDB")
//                .append("type", "database")
//                .append("count", 1)
//                .append("versions", Arrays.asList("v3.2", "v3.0", "v2.6"))
//                .append("info", new Document("x", 203).append("y", 102));
//        productos.insertOne(doc);
//        List<Document> documents = new ArrayList<>();
//        for (int i = 0; i < 100; i++) {
//            documents.add(new Document("i", i));
//        }
//        productos.insertMany(documents);
    }

}
1
задан 11.01.2017, 03:01
0 ответов

Ты ловишь исключения, свойственные MongoDB как они MongoSocketOpenException и MongoException :

try {
            mongoClient = new MongoClient("localhost", 27017);
            database = mongoClient.getDatabase("ferreteria");

        } catch (MongoSocketOpenException e) {
            System.out.println("Error al conectarse con la base de datos");
        } catch (MongoException e) {
            return null;
        }

Вероятно они производятся другой тип исключений, ты можешь добавлять:

  } catch(Exception e) {
    System.out.println("Error "+ e.getMessage();
    }
0
ответ дан 03.12.2019, 17:46

Теги

Похожие вопросы