java操作MongoDB
来源:互联网 发布:知乎用户分析 编辑:程序博客网 时间:2024/06/06 05:51
开发环境:
System:Windows8.1
IDE:eclipse
Database:mongoDB
开发依赖库:
mongo-java-driver-2.5.jar
配置文件 mongodbpool.properties
db=localhost=127.0.0.1port=27017size=20block=20
MongoDBManager.class
package com.lyh.mongo;import java.util.Properties;import com.lyh.util.ReadProperties;import com.mongodb.DB;import com.mongodb.Mongo;/** * @Description:MongoDB的对象和连接 * @ClassName:MongoManager.java * @author:liyon_000 * @time:2016-1-28 下午2:59:20 */public class MongoManager {private static Mongo mongo = null;private static String confFilePath="/mongodbpool.properties";private static Properties pro = null;private MongoManager() {}/** * 根据名称获取DB,相当于连接 * @param dbName * @return */public static DB getDB() {pro = ReadProperties.getProperties(confFilePath);if (mongo == null) {init();}return mongo.getDB(pro.getProperty("db"));}/** * 初始化连接池,设置参数 */private static void init() {//mongodb部署的ip地址String host = pro.getProperty("host");//mongodb部署的接口int port = Integer.parseInt(pro.getProperty("port"));try {//获得mongo对象,可以用此对象获得Databasemongo = new Mongo(host, port);for (String name:mongo.getDatabaseNames()) {System.out.println("dbName:"+name);}} catch (Exception e) {e.printStackTrace();}}}
读取配置文件类ReadProperties.java
package com.lyh.util;import java.io.InputStream;import java.util.Properties;/** * @Description:读取配置文件 * @ClassName:ReadProperties.java * @author:liyon_000 * @time:2016-1-28 下午3:09:22 */public class ReadProperties {private ReadProperties(){}private static Properties properties = null;static{if(properties ==null){properties = new Properties();}}private static void init(String filePath){InputStream inputStream = Object.class.getResourceAsStream(filePath);try {properties.load(inputStream);} catch (Exception e) {e.printStackTrace();}}public static Properties getProperties(String filePath){init(filePath);return properties;}}
基类BusinessObject.java
package com.lyh.mongo;import com.mongodb.DB;import com.mongodb.DBCollection;/** * @Description:基类 * @ClassName:BusinessObject.java * @author:liyon_000 * @time:2016-1-28 下午3:53:09 */public class BusinessObject {private static DB db;private static DBCollection dbCollection;static {db =MongoManager.getDB();}public static DBCollection getDbCollection(String document){dbCollection = db.getCollection(document);return dbCollection;}}
MongoDB操作类
package com.lyh.book;import java.util.ArrayList;import java.util.List;import org.bson.types.ObjectId;import com.lyh.mongo.BusinessObject;import com.mongodb.BasicDBObject;import com.mongodb.DBCollection;import com.mongodb.DBCursor;import com.mongodb.DBObject;/** * @Description:book的mongoDB操作例子 * @ClassName:BookMongoDemo.java * @author:liyon_000 * @time:2016-1-28 下午3:48:07 */public class BookMongoDemo extends BusinessObject{public static DBCollection coll = null;public static DBCursor cur = null;/** * 查询所有的book数据,只作为检测数据 */private static void queryAll(){System.out.println("查询所有book的数据:");cur = coll.find();while (cur.hasNext()) {System.out.println(cur.next());}}public static void insert(){queryAll();DBObject book = new BasicDBObject();book.put("name", "爱你如初");book.put("price", 40);book.put("author", "张爱玲");book.put("press", "中国教育出版社");book.put("kind", "TE001");coll.save(book);System.out.println(coll.save(book).getN());}public static void insertList(){queryAll();DBObject book = new BasicDBObject();book.put("_id", "123456"); //必须有_,尽量不要让mongodb自动生成book.put("name", "如若有你,一世欢喜");book.put("price", 23);book.put("author", "锦竹");book.put("press", "杭州文艺出版社");book.put("kind", "TE001");List<DBObject> list = new ArrayList<DBObject>();list.add(book);coll.insert(list);System.out.println(coll.insert(list).getN());}public static void remove(){queryAll();//删除指定_idcoll.remove(new BasicDBObject("_id", new ObjectId("56a99144a6e10b29746f0a18")));queryAll();//删除价格大于80的coll.remove(new BasicDBObject("price",new BasicDBObject("$gte", 80)));queryAll();}public static void modify(){queryAll();DBObject book = new BasicDBObject();book.put("name", "花间");book.put("price", 23);book.put("author", "兰思思");book.put("press", "北京文艺出版社");book.put("kind", "TE001");//_id为56a9d224483881c662edee9a的数据中press改为北京文艺出版社coll.update(new BasicDBObject("_id", new ObjectId("56a9d224483881c662edee9a")),book);}public static void find(){DBCursor dbcur =coll.find(new BasicDBObject("author","胡辛束"));while(dbcur.hasNext()){System.out.println(dbcur.next());}}public static void main(String[] args) {coll = getDbCollection("book");queryAll();//insert();//insertList();//remove();//modify();//find();}}总结到这吧,简单的操作,还需要深入的学习
0 0
- [mongodb]java操作mongodb
- [mongodb]java操作mongodb
- mongodb学习(java操作mongodb)
- mongodb初学-java操作mongodb
- mongoDB JAVA操作
- MongoDB,java操作
- Java 操作 MongoDB
- Java操作MongoDB
- mongoDB JAVA操作
- java操作mongodb实例
- Java操作MongoDB入门
- Java操作Mongodb
- Java操作MongoDB
- 使用Java操作Mongodb
- java 操作 mongodb
- Java操作MongoDB
- java操作mongodb
- java操作mongodb
- 《从零开始学Swift》学习笔记(Day 66)——Cocoa Touch设计模式及应用之通知机制
- 将jsp文件打包进jar包内使用
- grep过滤
- Android 5.0学习之ListView升级版RecyclerView
- Android设备驱动之——V4L2
- java操作MongoDB
- dp,sp和px的爱恨交缠
- 批量注册dll或ocx文件
- ECMAScript5中新增数组操作方法
- 杭电2089 不要62
- guava 下载
- 理解计算机(从无到有)
- Android ScrollView向上滑动控件顶部悬浮效果实现
- Maven Dependency介绍