class mongoInit { private $mongo; //mongo对象 private $db; //db mongodb对象数据库 private $collection; //集合,相当于数据表 /** * 初始化Mongo * $config = array( * 'server' => ‘127.0.0.1' 服务器地址 * ‘port’ => '27017' 端口地址 * ‘option’ => array('connect' => true) 参数 * 'db_name'=> 'test' 数据库名称 * ‘username’=> 'root' 数据库用户名 * ‘password’=> '123456' 数据库密码 * ) * Enter description here ... * @param unknown_type $config */ public function connect($config = array()) { if($config['server'] == ''){ $config['server'] = '127.0.0.1'; } if($config['port'] == ''){ $config['port'] = '27017'; } $options = array(); if(!$config['option']){ $options['connect'] = true; }else{ $matches = array(); preg_match_all("/(\w+):(\w+);/", $config['option'], $matches,PREG_SET_ORDER); foreach ($matches as $value){ $options[$value[1]] = $value[2]; } } $server = 'mongodb://' . $config['server'] . ':' . $config['port']; $this->mongo = new Mongo($server, $options); if ($config['db_name'] == '') $config['db_name'] = 'test'; $this->db = $this->mongo->selectDB($config['db_name']); if ($config['username'] != '' && $config['password'] != '') $this->db->authenticate($config['username'], $config['password']); } /** * 选择一个集合,相当于选择一个数据表 * @param string $collection 集合名称 */ public function selectCollection($collection) { return $this->collection = $this->db->selectCollection($collection); } /** * 新增数据 * @param array $data 需要新增的数据 例如:array('title' => '1000', 'username' => 'xcxx') * @param array $option 参数 */ public function insert($data, $option = array()) { return $this->collection->insert($data, $option); } /** * 批量新增数据 * @param array $data 需要新增的数据 例如:array(0=>array('title' => '1000', 'username' => 'xcxx')) * @param array $option 参数 */ public function batchInsert($data, $option = array()) { return $this->collection->batchInsert($data, $option); } /** * 保存数据,如果已经存在在库中,则更新,不存在,则新增 * @param array $data 需要新增的数据 例如:array(0=>array('title' => '1000', 'username' => 'xcxx')) * @param array $option 参数 */ public function save($data, $option = array()) { return $this->collection->save($data, $option); } /** * 根据条件移除 * @param array $query 条件 例如:array(('title' => '1000')) * @param array $option 参数 */ public function remove($query, $option = array()) { return $this->collection->remove($query, $option); } /** * 根据条件更新数据 * @param array $query 条件 例如:array(('title' => '1000')) * @param array $data 需要更新的数据 例如:array(0=>array('title' => '1000', 'username' => 'xcxx')) * @param array $option 参数 */ public function update($query, $data, $option = array()) { return $this->collection->update($query, $data, $option); } /** * 根据条件查找一条数据 * @param array $query 条件 例如:array(('title' => '1000')) * @param array $fields 参数 */ public function findOne($query, $fields = array()) { return $this->collection->findOne($query, $fields); } /** * 根据条件查找多条数据 * @param array $query 查询条件 * @param array $sort 排序条件 array('age' => -1, 'username' => 1) * @param int $limit 页面 * @param int $limit 查询到的数据条数 * @param array $fields返回的字段 */ public function find($query, $sort = array(), $skip = 0, $limit = 0, $fields = array()) { $cursor = $this->collection->find($query, $fields); if ($sort) $cursor->sort($sort); if ($skip) $cursor->skip($skip); if ($limit) $cursor->limit($limit); $result = array(); while ($cursor->hasNext()){ $result[] = $cursor->getNext(); } return $result; } /** * 数据统计 */ public function toatalCount() { return $this->collection->count(); } /** * 错误信息 */ public function error() { return $this->db->lastError(); } /** * 获取集合对象 */ public function getCollection() { return $this->collection; } /** * 获取DB对象 */ public function getDb() { return $this->db; } }
相关推荐
MongoVUE是专为MongoDB设计的一款图形用户界面工具,它为管理和操作MongoDB数据库提供了一个直观且用户友好的界面,使得数据库的管理不再局限于命令行。 MongoVUE的主要功能包括: 1. **连接管理**:MongoVUE允许...
有了MongoTemplate,我们就可以在服务类或DAO类中注入并使用它来执行查询、插入、更新和删除操作。例如,创建一个简单的User实体类,并创建一个MongoDB Repository接口: ```java public class User { @Id ...
总的来说,"mongoTemplate工具类Dao层方法封装.zip"资源包应包含如何在Dao层优雅地使用MongoTemplate进行数据库操作的实例,涵盖了MongoDB的基本CRUD操作以及一些高级特性。学习并掌握这些知识,将有助于提高Java...
Mongo数据库,windows 32位平台下的程序包,解压之后配置环境变量即可使用。操作说明,http://blog.csdn.net/tian_yan_jing/article/details/7863958
MongoDB的PHP扩展(php_mongo)是PHP与MongoDB进行交互的重要工具,它提供了丰富的函数和类库,使得开发者能够方便地在PHP中操作MongoDB数据库。然而,由于版本差异和编译配置问题,有时找到适用于特定PHP版本的兼容...
总结,php_mongo_5.2.6.6扩展是PHP 5.2.6时代连接MongoDB的重要工具,它简化了数据操作,提升了开发效率。然而,随着技术的演进,开发者应关注更新的扩展和最佳实践,以充分利用最新功能并确保系统的安全性和性能。
总的来说,php_mongo-1.6.6扩展是PHP与MongoDB之间的一个桥梁,允许开发人员使用熟悉的PHP语法操作非关系型数据库。虽然现在已被新的mongodb扩展所取代,但对于还在使用PHP 5.4到5.6的项目来说,这是一个重要的工具...
安装成功后,开发人员就可以在PHP中使用MongoDB的类和函数,如`MongoClient`和`MongoDB`,进行数据库操作。 总的来说,这个压缩包提供了PHP 5.5版本连接MongoDB数据库所需的驱动文件,对于那些使用PHP进行MongoDB...
总的来说,"Mongo封装类"是为方便PHP开发者使用MongoDB而创建的工具,它们简化了数据库操作,提高了开发效率。`MongoQB-master`可能就是这样一个工具,提供了一种面向对象的方式来构建和执行MongoDB查询。对于需要与...
标题中的"Excell导入Mongo工具类.rar"表明这是一个与Java编程相关的项目,它提供了一个工具类用于将Excel数据导入MongoDB数据库。MongoDB是一个流行的NoSQL数据库,它以JSON格式的文档存储数据,而非传统的表格结构...
PHP 5.6 版本中的 MongoDB 扩展是一个用于在 PHP 应用程序中与 MongoDB 数据库交互的重要工具。MongoDB 是一个流行的开源、分布式文档数据库系统,它以其灵活性、可扩展性和高性能而受到开发者的青睐。PHP 的 ...
- **Ruby支持**(Working with Mongo Objects and Classes in Ruby):介绍了在Ruby环境下如何操作MongoDB中的对象和类。 ### 系统架构与部署 - **生产环境推荐架构**(Recommended Production Architectures):...
通过分析这些文件,开发者可以学习如何建立数据库连接,执行CRUD操作,以及如何通过log.php类记录和处理日志信息。 在实际应用中,了解如何使用MongoDB Driver进行数据操作是非常重要的。这包括理解BSON(Binary ...
综上所述,"spring集成mongo所需jar"涉及的关键知识点包括Spring Data MongoDB框架、MongoDB Java驱动、项目构建工具(如Maven或Gradle)的依赖管理以及MongoDB的集成配置和操作。通过正确引入这些jar文件并按照上述...
完全面向对象的mongo封装,maven工程源码,可直接install导出jar包引用,支持基本的增删改查和分页等,使用反射对javaBean实体进行映射,所有方法参数只需要传javaBean就行了,支持带密码连接,即拿即用,无需修改。
MongoDB是一款广泛使用的开源文档型数据库,而"mongo可视化工具"则是为了帮助用户更直观、高效地管理和操作MongoDB数据库而设计的软件。这类工具通常提供了图形化的界面,使得数据库的查询、创建、修改和管理等工作...
本文主要探讨的是如何进行简单的对象数据库操作,结合“源码”和“工具”的标签,我们可以推测这可能涉及到具体的编程实践和可能的开源工具使用。 首先,对象数据库与传统的关系型数据库(如MySQL、PostgreSQL)...
PHP_Mongo_extension提供了丰富的函数和类,使得开发者可以执行以下操作: - **连接与断开**:`mongo()`函数用于创建到MongoDB服务器的连接,`MongoClient`类提供了更高级的连接选项。`close()`方法用于关闭连接。 ...
MongoDB的C++驱动,即`mongo-cxx-driver`,是一个关键组件,...综上所述,`mongo-cxx-driver`是C++开发者与MongoDB数据库交互的重要工具,它提供了丰富的功能和灵活的接口,让开发者能够高效地利用MongoDB的强大功能。
Java连接MongoDB工具类示例主要展示了如何在...通过上述知识点,你可以创建一个实用的Java工具类,用于连接MongoDB数据库并执行常见的CRUD操作。这将极大地简化你的开发流程,使你能够更好地利用MongoDB的强大功能。