// // Created by dongl on 23-5-29. // #include "db_base.h" #include "mongocxx/instance.hpp" #include "mongocxx/uri.hpp" db_base::db_base() { mongocxx::instance instance{}; // This should be done only once. mongocxx::uri uri("mongodb://user_session:Aa316216@124.221.152.192:27017/?authSource=im_session"); pool = new mongocxx::pool(uri); } db_base::~db_base() { delete pool; } mongocxx::pool::entry db_base::acquire() { return pool->acquire(); } bsoncxx::stdx::optional db_base::try_acquire() { return pool->try_acquire(); } mongocxx::collection db_base::hit_db_coll(const std::string& db_name, const std::string& coll_name) { // 取池链接 auto conn = acquire(); // 选中库 auto db = conn->database(db_name); // 选中表 return db.collection(coll_name); }