mongodb的java测试用例

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介:
测试用例包括:查询 数据库、查询聚类集合、查询数据、添加数据、添加多条数据、删除数据、修改数据操作,更多操作请使用者以此类推。
  完整工程下载地址:http://download.csdn.net/detail/linyu19872008/6913607
  工程目录结构如图:
  mongodb数据库管理类:
import com.mongodb.Mongo;
/**
* mongodb管理器
*
* @author jacklin
*
*/
public class MongodbManager {
private static Mongo mg = null;
/**
* 获取mongodb
*
* @return
*/
public synchronized static Mongo getMongo() {
if (mg == null) {
try {
mg = new Mongo("localhost", 27017);
} catch (Exception e) {
e.printStackTrace();
}
}
return mg;
}
}
   mongodb测试用例:
import java.util.ArrayList;
import java.util.List;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.util.JSON;
import com.sun.mongodb.manager.MongodbManager;
/**
* mongodb测试用例
*
* @author jacklin
*
*/
public class Testcase {
public static void main(String[] args) {
// // 查询所有的Database
// showDatabase();
// // 查询所有的聚集集合
// showCollections();
// // 查询数据
// find();
// // 添加数据
// add();
// // 添加多条数据
// addList();
// // 删除数据
// remove();
// // 修改数据
// modify();
}
/**
* 修改数据
*/
public static void modify() {
Mongo mg = MongodbManager.getMongo();
DB db = mg.getDB("test");
DBCollection users = db.getCollection("user");
DBObject userOld = new BasicDBObject();
userOld.put("name", "jack");
userOld.put("age", 24);
DBObject userNew = new BasicDBObject();
userNew.put("name", "jacky");
userNew.put("age", 26);
System.out.println(users.update(userOld, userNew));
}
/**
* 删除数据
*/
public static void remove() {
Mongo mg = MongodbManager.getMongo();
DB db = mg.getDB("test");
DBCollection users = db.getCollection("user");
DBObject user = new BasicDBObject();
user.put("name", "hoojo");
System.out.println(users.remove(user));
}
/**
* 添加多条数据
*/
public static void addList() {
Mongo mg = MongodbManager.getMongo();
DB db = mg.getDB("test");
DBCollection users = db.getCollection("user");
List<DBObject> list = new ArrayList<DBObject>();
DBObject user1 = new BasicDBObject("name", "lucy");
user1.put("age", 21);
DBObject user2 = new BasicDBObject("name", "lily");
user2.put("age", 22);
list.add(user1);
list.add(user2);
// 添加List集合
System.out.println(users.insert(list).getN());
}
/**
* 添加单条数据
*/
public static void add() {
Mongo mg = MongodbManager.getMongo();
DB db = mg.getDB("test");
DBCollection users = db.getCollection("user");
DBObject user = new BasicDBObject();
user.put("name", "jack");
user.put("age", 24);
System.out.println(users.save(user).getN());
}
/**
* 查询数据
*/
public static void find() {
Mongo mg = MongodbManager.getMongo();
DB db = mg.getDB("test");
DBCollection users = db.getCollection("user");
// 查询所有的数据
DBCursor cur = users.find();
while (cur.hasNext()) {
System.out.println("data:" + cur.next());
}
System.out.println("count:" + cur.count());
System.out.println("cursorId:" + cur.getCursorId());
System.out.println("json:" + JSON.serialize(cur));
}
/**
* 查询所有的聚集集合
*/
public static void showCollections() {
Mongo mg = MongodbManager.getMongo();
DB db = mg.getDB("test");
for (String name : db.getCollectionNames()) {
System.out.println("collectionName: " + name);
}
}
/**
* 查询所有的Database
*/
public static void showDatabase() {
Mongo mg = MongodbManager.getMongo();
for (String name : mg.getDatabaseNames()) {
System.out.println("dbName: " + name);
}
}
}


最新内容请见作者的GitHub页:http://qaseven.github.io/

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。 &nbsp; 相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
1月前
|
Java 测试技术 Maven
Java一分钟之-PowerMock:静态方法与私有方法测试
通过本文的详细介绍,您可以使用PowerMock轻松地测试Java代码中的静态方法和私有方法。PowerMock通过扩展Mockito,提供了强大的功能,帮助开发者在复杂的测试场景中保持高效和准确的单元测试。希望本文对您的Java单元测试有所帮助。
161 2
|
2月前
|
Java 流计算
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
45 1
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
|
2月前
|
Java 程序员 测试技术
Java|让 JUnit4 测试类自动注入 logger 和被测 Service
本文介绍如何通过自定义 IDEA 的 JUnit4 Test Class 模板,实现生成测试类时自动注入 logger 和被测 Service。
32 5
|
2月前
|
NoSQL Java 数据库连接
MongoDB Java
10月更文挑战第18天
23 3
|
2月前
|
存储 人工智能 Java
将 Spring AI 与 LLM 结合使用以生成 Java 测试
AIDocumentLibraryChat 项目通过 GitHub URL 为指定的 Java 类生成测试代码,支持 granite-code 和 deepseek-coder-v2 模型。项目包括控制器、服务和配置,能处理源代码解析、依赖加载及测试代码生成,旨在评估 LLM 对开发测试的支持能力。
51 1
|
2月前
|
存储 JSON NoSQL
Java 中MongoDB的使用
Java 中MongoDB的使用
19 2
|
2月前
|
分布式计算 Java 大数据
大数据-122 - Flink Time Watermark Java代码测试实现Tumbling Window
大数据-122 - Flink Time Watermark Java代码测试实现Tumbling Window
43 0
|
3月前
|
SQL JavaScript 前端开发
基于Java访问Hive的JUnit5测试代码实现
根据《用Java、Python来开发Hive应用》一文,建立了使用Java、来开发Hive应用的方法,产生的代码如下
79 6
|
3月前
|
NoSQL JavaScript Java
Java Python访问MongoDB
Java Python访问MongoDB
24 4
|
2月前
|
算法 Java 测试技术
数据结构 —— Java自定义代码实现顺序表,包含测试用例以及ArrayList的使用以及相关算法题
文章详细介绍了如何用Java自定义实现一个顺序表类,包括插入、删除、获取数据元素、求数据个数等功能,并对顺序表进行了测试,最后还提及了Java中自带的顺序表实现类ArrayList。
32 0
下一篇
DataWorks