mongodb使用
1. 下载 mongo-2.6.3.jar
2. 新建 java项目
3. 按Spring方式封装查询 直接上代码
package com.mytest;
import java.net.UnknownHostException;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.Mongo;
import com.mongodb.MongoException;
/**
*
*
* @author lw
* @created 2011-6-27 下午04:26:40
* @version 1.0.0
* @date 2011-6-27 下午04:26:40
*/
public class DBTemplate {
private static String MONGODB_SERVER = "192.168.42.212";
private static int SERVER_PORT = 27017;
private static String MONGODB_DBNAME = "test";
public final Object execute(MsgCallback action, String collection) {
DB db = getConn();
DBCollection dbColl = db.getCollection(collection);
Object result = action.doExecute(dbColl);
closeDb(db);
closeCollection(dbColl);
return result;
}
private DB getConn() {
return getConn(MONGODB_SERVER, SERVER_PORT, MONGODB_DBNAME);
}
private DB getConn(String server, int port, String dbName) {
Mongo m = null;
try {
m = new Mongo(server, port);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (MongoException e) {
e.printStackTrace();
}
return m.getDB(dbName);
}
private void closeDb(DB db) {
if (db != null) {
db = null;
}
}
private void closeCollection(DBCollection col) {
if (col != null) {
col = null;
}
}
}
package com.mytest;
import com.mongodb.DBCollection;
/**
*
* 功能描述:
*
* @author lw
* @created 2011-6-28 下午01:57:44
* @version 1.0.0
* @date 2011-6-28 下午01:57:44
*/
public interface MsgCallback {
Object doExecute(DBCollection dbCollection);
}
package com.mytest;
import java.util.List;
import java.util.Map;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
/**
*
* 功能描述:
*
* @author lw
* @created 2011-6-28 下午02:13:33
* @version 1.0.0
* @date 2011-6-28 下午02:13:33
*/
public interface SQLTemplate {
int insert(String collection, BasicDBObject dbObj);
int update(String collection, BasicDBObject oldObj, BasicDBObject newObj);
int delete(String collection, BasicDBObject dbObj);
Object selectOne(String collection, BasicDBObject dbObj);
Map<String, DBObject> selectMap(String collection, BasicDBObject dbObj);
List<DBObject> selectList(String collection, final BasicDBObject dbObj);
}
package com.mytest;
import java.util.List;
import java.util.Map;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
/**
*
* 功能描述:
*
* @author lw
* @created 2011-6-28 下午02:13:33
* @version 1.0.0
* @date 2011-6-28 下午02:13:33
*/
public interface SQLTemplate {
int insert(String collection, BasicDBObject dbObj);
int update(String collection, BasicDBObject oldObj, BasicDBObject newObj);
int delete(String collection, BasicDBObject dbObj);
Object selectOne(String collection, BasicDBObject dbObj);
Map<String, DBObject> selectMap(String collection, BasicDBObject dbObj);
List<DBObject> selectList(String collection, final BasicDBObject dbObj);
}
package com.mytest;
import java.util.List;
import java.util.Map;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCollection;
import com.mongodb.DBObject;
/**
*
* 功能描述:
*
* @author lw
* @created 2011-6-28 下午02:21:43
* @version 1.0.0
* @date 2011-6-28 下午02:21:43
*/
public class SQLDao implements SQLTemplate {
//可改成 Spring 注入
DBTemplate dbTemp = new DBTemplate();
public int insert(String collection, final BasicDBObject dbObj) {
return (Integer) dbTemp.execute(new MsgCallback() {
public Object doExecute(DBCollection dbCollection) {
return dbCollection.insert(dbObj).getN();
}
}, collection);
}
public int update(String collection, final BasicDBObject oldObj,
final BasicDBObject newObj) {
return (Integer) dbTemp.execute(new MsgCallback() {
public Object doExecute(DBCollection dbCollection) {
return dbCollection.update(oldObj, newObj).getN();
}
}, collection);
}
public int delete(String collection, final BasicDBObject dbObj) {
return (Integer) dbTemp.execute(new MsgCallback() {
public Object doExecute(DBCollection dbCollection) {
return dbCollection.remove(dbObj).getN();
}
}, collection);
}
public Object selectOne(String collection, final BasicDBObject dbObj) {
return dbTemp.execute(new MsgCallback() {
public Object doExecute(DBCollection dbCollection) {
return dbCollection.findOne(dbObj);
}
}, collection);
}
@SuppressWarnings("unchecked")
public Map<String, DBObject> selectMap(String collection,
final BasicDBObject dbObj) {
return ((DBObject) selectOne(collection, dbObj)).toMap();
}
@SuppressWarnings("unchecked")
public List<DBObject> selectList(String collection,
final BasicDBObject dbObj) {
return (List<DBObject>) dbTemp.execute(new MsgCallback() {
public Object doExecute(DBCollection dbCollection) {
return dbCollection.find(dbObj).toArray();
}
}, collection);
}
}
package com.mytest;
import java.util.ArrayList;
import java.util.List;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.util.JSON;
/**
*
* 功能描述:
*
* @author lw
* @created 2011-6-28 下午03:31:51
* @version 1.0.0
* @date 2011-6-28 下午03:31:51
*/
public class TestSQLDao extends SQLDao {
/**
* 功能描述:
*
* @param args
*/
public static void main(String[] args) {
TestSQLDao test = new TestSQLDao();
BasicDBObject obj = new BasicDBObject();
// obj.put("id", 6);
obj.put("name", "pluto");
// BasicDBObject newObj = new BasicDBObject("$set", new
// BasicDBObject("name", "gogo"));
List<DBObject> list = new ArrayList<DBObject>();
list = test.selectList("students", obj);
for (DBObject db : list) {
System.out
.println("-----------------------------------------------------");
System.out.println(JSON.serialize(db));
System.out
.println("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
System.out.println(db.toMap());
System.out
.println("-----------------------------------------------------");
}
}
public int insert(String collection, BasicDBObject dbObj) {
return super.insert(collection, dbObj);
}
public List<DBObject> selectList(String collection, BasicDBObject dbObj) {
return super.selectList(collection, dbObj);
}
}
分享到:
相关推荐
本篇将深入探讨"mongodb_java_2.6_API",即MongoDB 2.6版本的Java驱动程序API,了解如何使用Java进行MongoDB的开发。 1. **MongoDB Java驱动程序概述** MongoDB的Java驱动程序是Java开发者与MongoDB服务器通信的...
在这个“MongoDB之Java使用例子”中,我们将深入探讨如何在Java环境中操作MongoDB数据库,包括增、删、改、查(CRUD)操作以及图像数据的存储和检索。 首先,Java与MongoDB的交互主要通过MongoDB的Java驱动程序实现...
mongodb-java-driver-4.4.0.jar
在Java开发环境中集成MongoDB,开发者通常会使用官方提供的Java驱动程序。该驱动程序提供了丰富的API,使得Java开发者可以直接操作MongoDB数据库。除了基本的CRUD(创建、读取、更新、删除)操作外,还可以利用高级...
MongoDB for Java Developers Design, build, and deliver efficient Java applications using the most advanced NoSQL database
Java 中 MongoDB 使用环境详细配置 Java 中 MongoDB 使用环境详细配置是指在 Windows 平台(WinXP)上安装、运行、安装 Windows 服务的笔记,以作备忘。下面是一些重要的知识点: 1. MongoDB 的下载和安装 ...
在Java中使用MongoDB,首先需要安装并配置对应的驱动版本,以确保与正在运行的MongoDB服务器兼容。 1. MongoDB驱动介绍: MongoDB提供了多种语言的驱动程序,Java驱动是其中之一。它基于Java 6及更高版本,实现了...
目前,Java驱动通常使用的是MongoDB Java Driver,可以在Maven仓库中找到对应的依赖,例如: ```xml <groupId>org.mongodb <artifactId>mongodb-driver-sync <version>4.3.0 ``` 接下来,我们需要配置MongoDB...
mongodb_java_driver 已经验证可用!
这是一个java的mongodb的驱动包,使用它就能够与用java去连接mongodb服务器,和操作mongodb
- 在Java项目中使用MongoDB之前,需要添加MongoDB的Java驱动依赖。可以通过Maven或Gradle来管理依赖。 ```xml <groupId>org.mongodb <artifactId>mongodb-driver <version>3.4.2 ``` 2. **连接MongoDB**...
这是一个简单的例子,说明如何为 mongoDB 使用 java 驱动程序。 从http://www.mongodb.org/ : MongoDB 是一个开源文档数据库,也是领先的 NoSQL 数据库。 用 C++ 编写。 如果您没有任何工具箱来操作数据库,您有...
在本文中,我们将深入探讨如何使用Java连接MongoDB,涉及的知识点包括MongoDB Java驱动程序的安装、配置,以及基本的连接和操作数据库的方法。 首先,我们来看“java连接mongodb的jar包”。这个“mongodbjar”通常...
在Java开发环境中,MongoDB提供了Java驱动API,使得Java程序员可以方便地与MongoDB进行交互。本文档将深入探讨如何利用Java驱动API来操作MongoDB数据库。 一、MongoDB Java驱动API简介 MongoDB的Java驱动程序是Java...
在Java环境中与MongoDB交互,我们需要使用MongoDB的Java驱动程序。这个驱动程序提供了与MongoDB服务器通信的API,使得我们可以通过编写Java代码来执行各种数据库操作。在"Java执行集合创建、数据查询、数据插入、...
在Java中使用MongoDB,我们可以借助Spring Data MongoDB框架,它提供了一种简化的方式来操作MongoDB数据库。 首先,让我们了解Spring Data MongoDB的核心概念。Spring Data MongoDB为MongoDB提供了数据访问抽象层,...
9. **性能优化**:在使用MongoDB Java驱动时,了解最佳实践非常重要。这包括选择合适的索引、优化查询性能、减少网络往返次数以及正确使用批量操作等。 10. **监控和诊断**:MongoDB提供了丰富的诊断工具,如`db....
此外,你提到的CSDN博客链接提供了更详细的教程和示例代码,可以帮助你深入了解MongoDB Java驱动程序的使用。在那里,你可能会找到关于聚合操作、索引创建、事务处理等更高级主题的讨论。 总之,"mongodb_java_demo...
亲测可用,解压包含三个jar包,引用时sources和doc包根据需要添加。 mongo-java-driver-3.5.0.jar; mongo-java-driver-3.5.0-javadoc.jar; mongo-java-driver-3.5.0-sources.jar;