详解数据库基础操作及实例
废话不多说,直接上代码,注释写的比较清楚,大家参考下,
示例代码:
/** * 插入一条DB对象 */ public static void addDBObject(DBCollection collection,BasicDBObject object){ collection.insert(object); } /** * 根据id查询DBObject */ public static DBObject getDBObjectById(String value) throws UnknownHostException, MongoException{ dbc = getDBCollection("company", "users").find(new BasicDBObject("_id",new ObjectId(value))); DBObject ob = null; int i = 0; while(dbc.hasNext()){ ob = dbc.next(); i++; } if(i == 1){ return ob; }else{ return null; } } /** * 根据key和value值查询 */ public static DBObject getDBObject(String key,String value) throws UnknownHostException, MongoException{ dbc = getDBCollection("company", "users").find(new BasicDBObject(key,value)); DBObject ob = null; int i = 0; while(dbc.hasNext()){ ob = dbc.next(); i++; } if(i == 1){ return ob; }else{ return null; } } /** * 根据数据库名获取(新增)下面所有聚集名(表名) */ public static Set<String> getCollectionsNames(String DBName) throws MongoException, UnknownHostException{ return getDB(DBName).getCollectionNames(); } /** * 遍历聚集中的db对象集合(相当于关系数据库中的数据) */ public static Set<DBObject> getDBObjects(DBCollection collection){ Set<DBObject> dbObjects = new HashSet<DBObject>(); DBCursor cursor = collection.find(); while(cursor.hasNext()){ DBObject object = cursor.next(); dbObjects.add(object); } return dbObjects; } /** * 获取/新增聚集(相当于关系数据库表) */ public static DBCollection getDBCollection(String DBName,String collectionName) throws UnknownHostException, MongoException{ return getDB(DBName).getCollection(collectionName); } /** * 获取/新增数据库 */ public static DB getDB(String DBName) throws UnknownHostException, MongoException{ return getMongo().getDB(DBName); } /** * 连接数据库 */ public static Mongo getMongo() throws UnknownHostException, MongoException{ Mongo mg = null; if(mg == null){ mg = new Mongo(); } return mg; } /** * 关闭连接 */ public static void destory(Mongo mg) { if (mg != null){ mg.close(); mg = null; } System.gc(); } /** * 获取数据库名 */ public static List<String> getDBNames() throws MongoException, UnknownHostException{ return getMongo().getDatabaseNames(); } /** * 删除数据库 */ public static void deleteDB(String DBName) throws MongoException, UnknownHostException{ getMongo().dropDatabase(DBName); }
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“详解MongoDB数据库基础操作及实例”评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新动态
20240516
20240516
- dnf称号附魔
- 乌兰托娅.2024-《八月草儿飞HQ》头版限量编号[低速原抓WAV+CUE]
- 雷婷.2024-《寂寞烟火HQ》头版限量编号[低速原抓WAV+CUE]
- [ABC唱片]-《西电之声—人声》[HD-201][德国版HD]WAV+CUE
- dnf紧急任务怎么触发
- dnf紫牌能翻出什么
- 星穹铁道2.2上升的一切必将汇合怎么过 上升的一切必将汇合流程攻略
- [ABC唱片]-《西电之声—人声》[HD-201][德国版HD]WAV+CUE
- 【ABC唱片】《春花秋月古筝三重奏SACD》-WAV分轨
- [ABC唱片]-《邓丽君—永远的歌声(日语)》[K2-029][K2CD]WAV+CUE
- 吴牧野《强者独白II 李斯特巅峰作品选》[FLAC/分轨][286.41MB]
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 林俊杰《他是... JJ林俊杰》[FLAC][809M]
- dnf红眼110版本加点
- 星穹铁道2.2主线任务在我们的时代里全流程 崩铁2.2主线任务合集