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
相关文章
|
15天前
|
NoSQL JavaScript 前端开发
Java访问MongoDB
Java访问MongoDB
39 21
|
18天前
|
SQL NoSQL Java
Java使用sql查询mongodb
通过MongoDB Atlas Data Lake或Apache Drill,可以在Java中使用SQL语法查询MongoDB数据。这两种方法都需要适当的配置和依赖库的支持。希望本文提供的示例和说明能够帮助开发者实现这一目标。
42 17
|
2月前
|
SQL NoSQL Java
Java使用sql查询mongodb
通过使用 MongoDB Connector for BI 和 JDBC,开发者可以在 Java 中使用 SQL 语法查询 MongoDB 数据库。这种方法对于熟悉 SQL 的团队非常有帮助,能够快速实现对 MongoDB 数据的操作。同时,也需要注意到这种方法的性能和功能限制,根据具体应用场景进行选择和优化。
96 9
|
3月前
|
Java 测试技术 Maven
Java一分钟之-PowerMock:静态方法与私有方法测试
通过本文的详细介绍,您可以使用PowerMock轻松地测试Java代码中的静态方法和私有方法。PowerMock通过扩展Mockito,提供了强大的功能,帮助开发者在复杂的测试场景中保持高效和准确的单元测试。希望本文对您的Java单元测试有所帮助。
529 2
|
4月前
|
Java 流计算
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
63 1
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
|
4月前
|
Java 程序员 测试技术
Java|让 JUnit4 测试类自动注入 logger 和被测 Service
本文介绍如何通过自定义 IDEA 的 JUnit4 Test Class 模板,实现生成测试类时自动注入 logger 和被测 Service。
61 5
|
4月前
|
NoSQL Java 数据库连接
MongoDB Java
10月更文挑战第18天
30 3
|
4月前
|
存储 人工智能 Java
将 Spring AI 与 LLM 结合使用以生成 Java 测试
AIDocumentLibraryChat 项目通过 GitHub URL 为指定的 Java 类生成测试代码,支持 granite-code 和 deepseek-coder-v2 模型。项目包括控制器、服务和配置,能处理源代码解析、依赖加载及测试代码生成,旨在评估 LLM 对开发测试的支持能力。
111 1
|
4月前
|
存储 JSON NoSQL
Java 中MongoDB的使用
Java 中MongoDB的使用
27 2
|
4月前
|
分布式计算 Java 大数据
大数据-122 - Flink Time Watermark Java代码测试实现Tumbling Window
大数据-122 - Flink Time Watermark Java代码测试实现Tumbling Window
56 0