MongoDB 2.4.1 C++ driver编译和使用

WBOY
Lepaskan: 2016-06-07 17:28:21
asal
972 orang telah melayarinya

这个版本仍然没有解决不能编译动态库的问题,MongoDB这帮人发什么神经? 原来两个绕过的方法也不行了。 只有使用静态库了。 下载

这个版本仍然没有解决不能编译动态库的问题,MongoDB这帮人发什么神经?

原来两个绕过的方法也不行了。

只有使用静态库了。

下载最新版的代码,编译

scons --prefix=/usr install

旧版的C++代码会编译报错,因为ScopedDbConnection的构造函数变成了私有,,必须通过静态方法来创建。

 

所以调用代码要做相应调整。

我的CMake工程配置如下:

target_link_libraries(service ${Boost_LIBRARIES} booster loki cryptopp mongoclient)

应该没有问题了。

 

分享一下我的C++封装类:

#ifndef BUSINESS_UTIL_MONGO_SESSION_H_
#define BUSINESS_UTIL_MONGO_SESSION_H_

#include
#include
#include

using std::string;


class MongoSession {
 public:
    /**
    * 从连接池中获取连接,如果没有则创建一个
    */
    MongoSession(string const& host, double socketTimeout=0);

    /**
    * 归还连接到池中
    */
    ~MongoSession();
   
    /**
    * 返回已经获得的连接
    */
    mongo::DBClientBase& GetDBClientBase();

 private:
    std::auto_ptr<:scopeddbconnection> con_;
};


#endif

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里

推荐阅读:

CentOS编译安装MongoDB

CentOS 编译安装 MongoDB与mongoDB的php扩展

CentOS 6 使用 yum 安装MongoDB及服务器端配置

Ubuntu 13.04下安装MongoDB2.4.3

如何在MongoDB中建立新数据库和集合

MongoDB入门必读(概念与实战并重)

linux

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan