作者:想太多先生的微博 | 来源:互联网 | 2023-10-12 16:30
本来是想写个Java操作MongoDB数据库增删查改的Demo的,但是最近没有时间,只能简单地将之前记录的连接MongoDB的方法贴出来…等有时间在把完整的增删查改Demo补全吧…
本来是想写个Java 操作 MongoDB数据库增删查改的Demo的 , 但是最近没有时间 , 只能简单地将之前记录的连接MongoDB的方法贴出来…
等有时间在把完整的增删查改Demo补全吧….
我本地自己装了MongoDB数据库,所以我是在Windos下运行的…
没有Jar包的…看这里….
Java 连接 MongoDB Driver Jar包
这些常量..按照自己的实际环境修改吧…如果mongo数据库没有设置用户名和密码,就不用做校验…
[java] view plain copy
private static final String host = “localhost”;
private static final int port = 27017;
private static final String userName = “”;
private static final String password = “”;
private static final String dataBaseName = “mongotest”;
private static final String tableName = “user”;
版本一 , 注意看 : 我这里使用的是 Mongo mOngo= new Mongo(host, port); 来连接的…
[java] view plain copy
public void connMongoDB() throws Exception {
Mongo mongo =new Mongo(host, port);
DB db = mongo.getDB(dataBaseName);
if (!StringUtils.isEmpty(userName) || !StringUtils.isEmpty(password)) {
db.authenticate(userName, password.toCharArray());
}
DBCollection dbCollection = db.getCollection(tableName);
DBCursor dbCursor = dbCollection.find();
while(dbCursor.hasNext()){
Map map = (Map)dbCursor.next();
System.out.println(map);
}
}
结果图:
这个是我的MongoDB数据库
然后是版本2.
注意看啊…这里我使用的是 MongoClient mOngoClient= new MongoClient(host,port); 连接MongoDB的…
[java] view plain copy
public void connectMongoDB(){
try{
MongoClient mongoClient =new MongoClient(host,port);
DB db = mongoClient.getDB(dataBaseName);
DBCollection dbCollection = db.getCollection(tableName);
DBCursor dbCursor = dbCollection.find();
while(dbCursor.hasNext()){
System.out.println(dbCursor.next());
}
}catch (Exception e) {
e.printStackTrace();
}
}
虽然他们的结果都是一样的
他们都可以连接MongoDB数据库,但是有什么区别呢?
百度查了下,找到这个文章,分析的不错,有兴趣的可以看下…
不过官方文档和源代码建议使用MongoClient类… 不就的将来会废弃Mongo
mongoclient和mongo类写性能差异原因分析
一、MongoDB数据库参数配置
1、推荐使用mongodb.cfg.properties配置,则在构造MongoDBService对象的时候只需调用无参构造方法即可自动完成配置。
\
2、如果没有通过mongodb.cfg.properties,会采用程序指定的默认配置。
3、通过有参构造方法构造MongoDBService对象或通过get/set方法,指定数据库及集合,优先级最高。
1、获取基本信息或对象:
(1)、获取数据库名: getDbName() (2)、设置数据库名(指定数据库): setDbName(String dbName) (3)、获取集合名: getCollName() (4)、设置集合名(指定集合): setCollName(String collName) (5)、获取数据库对象: getDb() 2、数据插入方式: (1)、插入单条数据: insert(DBObject obj) (2)、插入多条数据: insertBatch(List list)void 3、数据删除方式: (1)、删除单条数据: delete(DBObject obj) (2)、删除多条数据: deleteBatch(List list) 4、数量统计方式: (1)、获取集合中数据数量: getCollectionCount() (2)、获取符合条件的数据数量: getCount(DBObject obj) 5、查找数据: (1)、查找所有数据: findAll() (2)、查找符合条件的数据: find(DBObject obj) (3)、查找符合条件的数据并排序: find(DBObject query, DBObject sort) (4)、查找符合条件的指定数量的数据并排序:find(DBObject query, DBObject sort, int start, int limit) (5)、由ID查找数据: getById(String id) 6、更新数据 :update(DBObject setFields, DBObject whereFields) void 7、打印List: printListDBObj(List list)