`
a3032136
  • 浏览: 3764 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

浅谈如何用Java操作MongoDB?

 
阅读更多

NoSQL数据库因其可扩展性使其变得越来越流行,利用NoSQL数据库可以给你带来更多的好处,MongoDB是一个用C++编写的可度可扩展性的开源NoSQL数据库。本文主要讲述如何使用Java操作MongoDB以及了解MongoDB如何进行日常的数据库操作。

 

 

第一步:安装MongoDB

无需太多的繁杂步骤,你只要在MongoDB官方网站查看安装说明,根据自己的操作系统进行选择适应的版本即可。

第二步:启动MongoDB服务器

这一步也很简单。运行mongod.exe文件里的bin文件夹(我使用的是Windows OS系统),并启动MongoDB服务器。

在默认的情况下服务器将启动端口27017,你需要在安装过程中创建将数据存储在/data/db目录里。

第三步:启动MongoDB shell指令

你可以通过运行mongo.exe文件来启动MongoBD shell。

第四步:利用MongoDB创建数据库

利用MongoDB在MongoDB shell中输入以下内容建立一个名为“company”的数据库。

 

use company 

 记住,除非你在MangoDB里保存了一些东西,否则它不会自动为你保存。

使用下面的命令帮你查看可用的数据库,它会显示“company”尚未被创建。

 

show dbs;    

 第五步:在MongoDB中保存数据

使用下面的命令来保存employee 数据代表一个collection,将其命名为employees。

 

employee = {name : "A", no : 1}     
db.employees.save(employee)    

 通过使用下面的命令来查看collection里的数据。

 

db.users.find();

 如何使用Java操作MongoDB?

下面是是一段简单的Java代码,你可以在这里获得mongo-java驱动。很简单,只需要使用下面的代码,重复上面的操作即可。

 

package com.eviac.blog.mongo;    
    
import java.net.UnknownHostException;    
    
import com.mongodb.BasicDBObject;    
import com.mongodb.DB;    
import com.mongodb.DBCollection;    
import com.mongodb.DBCursor;    
import com.mongodb.Mongo;    
import com.mongodb.MongoException;    
    
public class MongoDBClient {    
    
 public static void main(String[] args) {    
    
  try {    
    
   Mongo mongo = new Mongo("localhost", 27017);    
    
   DB db = mongo.getDB("company");    
    
   DBCollection collection = db.getCollection("employees");    
    
   BasicDBObject employee = new BasicDBObject();    
   employee.put("name", "Hannah");    
   employee.put("no", 2);    
    
   collection.insert(employee);    
    
   BasicDBObject searchEmployee = new BasicDBObject();    
   searchEmployee.put("no", 2);    
    
   DBCursor cursor = collection.find(searchEmployee);    
    
   while (cursor.hasNext()) {    
    System.out.println(cursor.next());    
   }    
    
   System.out.println("The Search Query has Executed!");    
    
  } catch (UnknownHostException e) {    
   e.printStackTrace();    
  } catch (MongoException e) {    
   e.printStackTrace();    
  }    
    
 }    
    
}   

 结果如下:

 

{ "_id" : { "$oid" : "4fec74dc907cbe9445fd2d70"} , "name" : "Hannah" , "no" : 2}    
The Search Query has Executed!    

 小结:

随着互联网Web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展也非常迅速。本文浅显的谈及了如何使用Java操作MongoDB以及了解MongoDB如何进行日常的数据库操作的问题。如果您是这方面的专家不妨与我们分享下。

 本文并非原创 原创出自http://www.csdn.net/article/2012-07-04/2807109

分享到:
评论

相关推荐

    浅谈java实现mongoDB的多条件查询

    但是,当我们使用Java操作MongoDB时,如何实现多条件查询呢? 使用DBObject实现多条件查询 在Java中,我们可以使用DBObject来实现多条件查询。DBObject是一个简单的Java对象,它可以用于存储和检索MongoDB中的数据...

    浅谈Spring Data如何简化数据操作的方法

    首先,Spring Data支持多种NoSQL数据库,例如MongoDB(文档数据库)、Neo4j(图形数据库)、Redis(键/值存储)和Hbase(列族数据库),同时也支持关系数据存储技术,如JDBC和JPA。对于JPA支持,Spring Data JPA提供...

    new_test.rar_NEW_java 采集_采集入库

    描述“浅谈自动采集程序及入库”则意味着我们将关注自动采集过程以及如何有效地将采集到的数据导入到数据库。自动采集,通常称为网络爬虫或Web抓取,是通过编写特定的程序来遍历网页,提取所需信息的过程。入库则是...

    浅谈云计算开发服务平台的设计与实现.pdf

    云计算开发服务平台的设计与实现涉及到云平台架构的关键概念、开源框架的使用、分布式技术的应用,以及云服务中各项组件的配置与部署。以下是从提供的文档内容中提炼出的详细知识点: 1. OpenShift开源框架: ...

    Amber16+分子模拟与计算化学的软件+生物分子(如蛋白质、核酸)的动态模拟+药物设计+膜蛋白研究及能量计

    Amber16 是一款在分子模拟与计算化学领域广泛应用的软件工具。它广泛应用于生物化学、药物设计、生物分子、生物大分子以及材料科学中的分子动力学模拟和相关计算研究。 用途 1. 生物分子模拟:模拟蛋白质、核酸、多糖等生物大分子的动态行为,研究其结构与功能的关系。 2. 药物设计与分子对接:分析小分子药物与生物靶标的结合模式,优化药物设计。 3. 膜蛋白模拟:利用 Lipid16 力场模拟磷脂双分子层,研究膜蛋白的结构与功能。 4. 能量计算与优化:进行能量最小化、自由能计算等,研究分子间的相互作用。 5. 轨迹分析:分析模拟轨迹,计算均方位移、RMSD、RMSF 等参数。 6. 力场转换与扩展:支持多种力场的转换和扩展,例如 CHARMM、AMOEBA。 技术关键词 - 分子动力学(MD):通过数值模拟研究分子在一定时间内的运动。 - 力场(Force Field):如 Amber 力场、Lipid14 力场,用于描述分子间的相互作用。 - GPU 加速:PMEMD 模块支持 GPU 加速,显著提高计算效率。

    59.基于51单片机的汽车倒车防撞报警系统(实物).pdf

    59.基于51单片机的汽车倒车防撞报警系统(实物).pdf

    计算机中~人工神经网络及其应用(导论).ppt 人工智能神经网络通过多样化架构(CNN、RNN、GAN等)与技术创新,已在医疗、

    人工智能神经网络及其应用主要包含以下六大核心要点: ‌一、基础概念与核心结构‌ 1. ‌定义与组成‌ 2. ‌工作原理‌ ‌二、常见神经网络架构‌ 3. ‌卷积神经网络(CNN)‌ 4. ‌循环神经网络(RNN) 5. ‌生成对抗网络(GAN) 6. ‌Transformer ‌三、关键技术组件‌ 7. ‌激活函数 8. ‌优化算法 9. ‌正则化技术 ‌四、核心应用领域‌ 10. ‌信息处理与模式识别 11. ‌医疗健康 12. ‌交通与工业 13. ‌金融与经济 14. ‌生成式应用 ‌五、发展趋势‌ 15. ‌算力与模型优化 16. ‌多模态融合 17. ‌轻量化与边缘计算 ‌六、挑战与伦理问题‌ 18. ‌数据依赖与可解释性 19. ‌安全与隐私 20. ‌伦理与监管

    10.基于51单片机的密码锁设计(仿真+实物).pdf

    10.基于51单片机的密码锁设计(仿真+实物)

    MySql导出表结构到Word文档 支持导出MySQL数据库表结构!! 运行环境:jdk8+,需要Java运行环境

    MySql导出表结构到Word文档 支持导出MySQL数据库表结构!! 运行环境:jdk8+,需要Java运行环境

    华为USG5500、USG5530系列升级固件v300r001c10spc600.bin

    华为USG5500、USG5530系列升级固件v300r001c10spc600.bin

    Delphi 12.3控件之手机秒变扫码枪,扫付款码收款Delphi FMX源代码多平台.rar

    Delphi 12.3控件之手机秒变扫码枪,扫付款码收款Delphi FMX源代码多平台.rar

    tuned-profiles-oracle-2.16.0-1.el8.x64-86.rpm.tar.gz

    1、文件说明: Centos8操作系统tuned-profiles-oracle-2.16.0-1.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf tuned-profiles-oracle-2.16.0-1.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm

    基于java的ssm小说阅读网站(含LW+PPT+源码+系统演示视频+安装说明).7z

    小说阅读网站,主要的模块包括查看;管理员;首页、个人中心、读者管理、作者管理、小说信息管理、小说分类管理、余额充值管理、购买小说管理、下载小说管理、系统管理,读者;个人中心、余额充值管理、购买小说管理、下载小说管理、我的收藏管理等,作者:个人中心、小说信息管理、小说分类管理、余额充值管理、购买小说管理、下载小说管理、我的收藏管理。首页:小说信息、我的、跳转到后台功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对前后台有相应的操作权限。 要想实现小说阅读网站的各项功能,需要后台数据库的大力支持。管理员验证注册信息,收集的读者信息,并由此分析得出的关联信息等大量的数据都由数据库管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。 本系统的开发使获取小说阅读网站信息能够更加方便快捷,同时也使小说阅读网站信息变的更加系统化、有序化。系统界面较友好,易于操作。 关键词:小说阅读网站 ;jsp ;Mysql

    284.基于51单片机的风扇【自然风,手动,电位器,ADC0808】(仿真).pdf

    284.基于51单片机的风扇【自然风,手动,电位器,ADC0808】(仿真).pdf

    山东大学软件学院计算机网络实验

    山东大学软件学院计算机网络实验

    linux mipi-camera驱动程序 s5k33d-48

    linux mipi-camera驱动程序 s5k33d_48

    软件工程研究生课程:移动互联网技术及应用的教学大纲解析

    内容概要:本文档是重庆大学针对软件工程专业开设的一门《移动互联网技术及应用》的详细教学大纲。课程分为多个模块,涵盖了移动互联网的现状和技术基础、不同应用场景及其商业模式、案例分析和实践操作。课程还关注于手机网站开发、应用程序构建及特定功能如GPS定位的应用等方面的技术,旨在培养学生的理论素养和技术实现能力,最终能够独立完成一个移动互联网创新项目。评分依据为出勤和课堂表现的过程评价与作品的实际效果实践评价相结合的方式。 适合人群:即将就读或者正在研读移动互联网相关专业的高校研究生,尤其是已掌握Web开发基础并有意深入探究移动互联网技术方向的学生。 使用场景及目标:此课程非常适合那些计划未来投身于快速发展的移动互联行业的年轻人;它不仅可以加深他们对该行业最新趋势的理解,还可以锻炼实际解决问题的能力。 其他说明:教学材料包括一系列权威性的书籍作为参考资料,帮助学员更广泛地获取知识。此外,通过一系列有针对性的设计任务和小组合作的学习形式进一步提高学生的综合技能水平。

    眼动数据 - 副本.zip

    眼动数据 - 副本.zip

    20250323.pcapng

    20250323.pcapng

    2025年3月CCF编程能力认证(C++)五级.pdf

    2025年3月CCF编程能力认证(C++)五级.pdf

Global site tag (gtag.js) - Google Analytics