Morphia 操作 MongoDB

上传人:碎****木 文档编号:220861127 上传时间:2021-12-09 格式:DOCX 页数:23 大小:152.22KB
返回 下载 相关 举报
Morphia 操作 MongoDB_第1页
第1页 / 共23页
Morphia 操作 MongoDB_第2页
第2页 / 共23页
Morphia 操作 MongoDB_第3页
第3页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Morphia 操作 MongoDB》由会员分享,可在线阅读,更多相关《Morphia 操作 MongoDB(23页珍藏版)》请在金锄头文库上搜索。

1、Morphia 操作 MongoDB上两篇文章: :/ cnblogs /hoojo/archive/2021/06/01/2066426.html :/ cnblogs /hoojo/archive/2021/06/02/2068665.html介绍到了在 MongoDB 的把握台完成 MongoDB 的数据操作、以及通过 Java MongoDB 的驱动完成在 Java 中对 MongoDB 的操作,通过前两篇文章我们对 MongoDB 有了全面、深刻的生疏和理解。现在我们就看看利用Morphia 库来操作 MongoDB。开发环境:System:Windows IDE:eclipse、M

2、yEclipse 8 Database:mongoDB开发依靠库:JavaEE5、mongo-2.5.3.jar、junit-4.8.2.jarEmail:hoojo_126 Blog: :/ :/blogs /一、预备工作1、首先,下载 mongoDB 对 Java 支持的驱动包驱动包下载地址: s:/github /mongodb/mongo-java-driver/downloadsmongoDB对Java的相关支持、技术: :/ mongodb.org/display/DOCS/Java+Language+Center驱动源码下载: s:/download.github /mongod

3、b-mongo-java-driver-r2.6.1-7-g6037357.zip在线查看源码: s:/github /mongodb/mongo-java-driverMorphiajar包下载: :/code.google /p/morphia/downloads/list2、下面建立一个 JavaProject 工程,导入下载下来的驱动包。即可在 Java 中使用Morphia,名目如下:二、Java 操作 MongoDB 例如在本例如之前你需要启动mongod.exe 的效劳,在你安装 mongoDB 的名目中,找到mongod.exe 启动效劳后,下面的程序才能顺当执行;1、Java

4、 操作 mongoDB 数据库,操作索引Mongo mongo = new Mongo();这样就创立了一个 MongoDB 的数据库连接对象,它默认连接到当前机器的 localhost地址,端口是 27017。DB db = mongo.getDB(“test”);这样就获得了一个 test 的数据库,假设 mongoDB 中没有创立这个数据库也是可以正常运行的。假设你读过上一篇文章就知道,mongoDB 可以在没有创立这个数据库的状况下,完成数据的添加操作。当添加的时候,没有这个库,mongoDB 会自动创立当前数据库。得到了 db,下一步我们要猎取一个“聚拢集合 DBCollection

5、”,通过 db 对象的getCollection 方法来完成。DBCollection users = db.getCollection(“users“); 这样就获得了一个 DBCollection,它相当于我们数据库的“表”。查询全部数据DBCursor cur = users.find(); while (cur.hasNext() System.out.println(cur.next();用 BasicDBObjectBuilder,向 users 对象中添加数据user = BasicDBObjectBuilder.start (“id“, 1546555).append(“nam

6、e“, “jojo“).add(“address“, “gz“).append(“email“, “hoojo_126 “).get();插入数据users.insert(user);可以利用 JSON 工具来序列化对象数据JSON.serialize(cur)完整源码package com.hoo.test;import .UnknownHostException;import com.hoo.entity.User;import com.hoo.util.BasicDBObjectUtils; import com.mongodb.BasicDBObjectBuilder; import

7、com.mongodb.DB;import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.Mongo;import com.mongodb.MongoException;import com.mongodb.util.JSON;/*function:Mongo实例对象的相关方法测试*authorhoojo*createDate2021-5-24下午02:42:29*fileMongoDBTest.java*packagecom.hoo.

8、test*projectMongoDB*blog :/*emailhoojo_126 *version1.0*/publicclass MongoDBTest publicstaticvoid main(String args) throws UnknownHostException, MongoException Mongo mg = new Mongo();System.out.println(“查询全部的Database的名称“);for (String name : mg.getDatabaseNames() System.out.println(“dbName: “ + name);

9、System.out.println(“查询test库中的全部collection集合表名称“); DB db = mg.getDB(“test“);for (String name : db.getCollectionNames() System.out.println(“collectionName: “ + name);System.out.println(“添加测试数据“);DBCollection users = db.getCollection( “users“);try / 用自定义BasicDBObjectUtils工具类,将User Enity对象转换成DBObjectDBO

10、bject user = BasicDBObjectUtils.castModel2DBObject(newUser(“345567“, “jack“, 22, “beijin“); users.insert(user);/ 用BasicDBObjectBuilder构建一个DBObject对象user = BasicDBObjectBuilder.start(“id“, 1546555).append(“name“, “jojo“).add(“address“,“gz“).append(“email“, “hoojo_126 “).get(); users.insert(user); cat

11、ch (Exception e) e.printStackTrace();System.out.println(“游标查询全部users集合数据“); DBCursor cur = users.find();while (cur.hasNext() System.out.println(cur.next();System.out.println(“查询游标相关内容“); System.out.println(cur.count(); System.out.println(cur.getCursorId(); System.out.println(cur.getOptions(); System

12、.out.println(cur.getQuery(); System.out.println(cur.getSizes().listIterator();System.out.println(cur.itcount();/System.out.println(cur.length(); System.out.println(cur.size(); System.out.println(cur.numGetMores(); System.out.println(cur.curr();/System.out.println(cur.toArray().get(0);System.out.prin

13、tln(“显示游标查询到的全部内容: “ + JSON.serialize(cur);工具类,将带有 getter、setter 方法的 Java 类序列化成 DBObject 对象package com.hoo.util;import java.lang.reflect.Method; import com.mongodb.BasicDBObject; import com.mongodb.DBObject;/*function:将Entity/Model转换成DBObject*authorhoojo*createDate2021-5-30下午01:53:08*fileBasicDBObje

14、ctUtil.java*packagecom.hoo.util*projectMongoDB*blog :/*emailhoojo_126 *version1.0*/publicclass BasicDBObjectUtils publicstatic DBObject castModel2DBObject(T entity) throwsException Method method = entity.getClass().getMethods();DBObject dbObject = new BasicDBObject();for (Method m : method) /System.out.println(m.getName();if (m.getName().startsWith(“get“) String name = m.getName().replace(“get“, “);for (Method m2 : method) if (m2.getNam

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 教育/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号