MongoDB基本操作以及JDBC连接

本文介绍了MongoDB的基本操作,包括安装、启动、停止服务,以及创建、查询、更新和删除数据库及集合。此外,还展示了如何使用JDBC在Java中连接MongoDB,采用了Singleton设计模式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[b]MongoDB[/b]
Mac上使用MongoDB的方法。
官网下载安装包,安装完毕后,如果是默认路径,就在根目录下[color=darkblue][i]创建一个data文件夹[/i][/color],存放数据库中的数据。

开启MongoDB服务:在terminal中,切换到bin目录下执行./mongod就开启了MongoDB服务

连接数据库:新创建一个terminal窗口,在bin目录下执行./mongo,这是默认链接到test

退出数据库:用control + c 或者“>exit” 与数据库断开链接,这时服务器还是开启状态

关闭服务:首先切换到admin,然后执行db.shutdownServer(),这样就关闭了MongoDB服务

MongoDB是一种非关系型数据库,它的数据存储格式为Bson,和Json很相似,SQL语句是用于关系型数据库的,对于MongoDB数据库的操作更像是对象调用方法,这里简单列举几种重要操作:

1,创建数据库。在MongoDB中创建数据库和切换数据库时都用“use dbname”命令,例如use person;如果不存在名字为person的数据库,就创建一个名为person的数据库,如果已经存在就切换到这个数据库下。值得注意的是,当这个数据库不存在,我们执行use person后,这是person是个空的数据库,如果我们不向里面写数据,那么系统就会自动删除这个数据库,只有写了数据系统才会保存。

2,创建集合。创建集合的概念和创建一个数据库相似,例如当前是Person数据库,当我们想创建一个名为students的集合时,我们就采用db.students.insert({"name" : "XXX" });这时students集合就在Person数据库中建立了,集合里面保存了一条记录,里面包含一个字段是”name“。

3,查询操作 find。我们用db.students.find()可以查询students集合中所有的数据,如果用db.students.find({“name": "xxx"})可以查找我们需要的特定数据。结果集中有一个字段是”_id“, 这个字段是数据库默认给我们加的GUID,目的就是保证数据的唯一性。

4,更新操作 update。db.students.update({"name" : "XXX"}, {"name": "XX"}),当我们执行完成后,name将变为”XX“。

5,删除操作 remove。执行db.students.remove({"name" : "XX"})操作,就会在集合中删除名为”XX“的所有记录。

6,删除集合,db.students.drop()

7,删除数据库,首先进入要删除的数据库,然后执行db.dropDatabase()。


下面是用JDBC链接MongoDB数据库,并采用了Singleton的设计模式。


import com.mongodb.DB;
import com.mongodb.MongoClient;

public class Connection {
private String host = "localhost";
private int port = 27017;
private String dbName = "mongo";

private static Connection instance = null;

// singleton model
private Connection() {
}

public DB getConnection() {
DB db = null;
try {
MongoClient client = new MongoClient(host, port);
db = client.getDB(dbName);
} catch (UnknownHostException e) {
e.printStackTrace();
}
return db;
}

public static Connection getInstance() {
if (Connection.instance == null) {
Connection.instance = new Connection();
}
return Connection.instance;
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值