@RequiresPermissions("message:kafkaMessage:view")
@RequestMapping(value = "listData")
@ResponseBody
public Page<KafkaMessage> listData(KafkaMessage kafkaMessage, HttpServletRequest request, HttpServletResponse response) {
List<KafkaMessage> kafkaMessageList = new ArrayList<>();
Gson gson = new Gson();
//连接到 mongodb 服务
MongoClient mongoClient = new MongoClient(mongoUrl, Integer.parseInt(port));
DB database = mongoClient.getDB("MongoTest");
DBCollection kafka = database.getCollection("kafkaMessage");
BasicDBObject query = new BasicDBObject();
if(kafkaMessage.getIsError() != null && kafkaMessage.getIsError() != ""){
if(kafkaMessage.getIsError().equals("1")){
query.put("responseCode", new BasicDBObject("$ne", "0"));
}else{
query.put("responseCode", "0");
}
}
if (kafkaMessage.getServiceId() != null && kafkaMessage.getServiceId() != "") {
query.put("serviceId", kafkaMessage.getServiceId());
}
if (kafkaMessage.getRequestIp() != null && kafkaMessage.getRequestIp() != "") {
query.put("requestIp", kafkaMessage.getRequestIp());
}
if (kafkaMessage.getResponseCode() != null && kafkaMessage.getResponseCode() != "") {
query.put("responseCode", kafkaMessage.getResponseCode());
}
//按照请求时间倒序
Page<KafkaMessage> page = new Page<KafkaMessage>(request, response);
page.setPageSize(20);
//查询分页的数据显示
DBCursor cursor = kafka.find(query).skip((page.getPageNo() - 1) * page.getPageSize()).limit(page.getPageSize()).sort(new BasicDBObject("requestDate", -1));
//查询总数
DBCursor count = kafka.find(query).sort(new BasicDBObject("requestDate", -1));
while (cursor.hasNext()) {
DBObject obj = cursor.next();
//反转
KafkaMessage k = gson.fromJson(obj.toString(), KafkaMessage.class);
kafkaMessageList.add(k);
}
page.setList(kafkaMessageList);
page.setCount(count.count());
return page;
}
分享到:
相关推荐
本篇文章将深入探讨如何使用Java与MongoDB进行数据分页查询,结合源码分析工具,帮助开发者更好地理解和应用这一技术。 首先,我们要了解的是MongoDB的基本概念。MongoDB是一个基于分布式文件存储的数据库,支持...
本文主要介绍了使用java和MongoDB实现存图片和下载图片的方法,并结合实例形式详细分析了java结合MongoDB实现图片的存储和下载相关操作技巧。 Java和MongoDB简介 在本文中,我们将使用java作为开发语言,并配合...
将一系列图片文件存储到MongoDB中 java操作mongodb存储文件
总的来说,Java连接MongoDB的关键在于理解和使用MongoDB Java驱动程序,通过它,开发者可以轻松地在Java应用中实现对MongoDB数据库的增删改查等各种操作。在实际开发中,确保正确配置JAR文件,理解连接字符串的格式...
"JAVA代码实现MongoDB动态...本文介绍了使用JAVA实现MongoDB动态条件之分页查询的两种方法:使用QueryByExampleExecutor和使用MongoTemplate结合Criteria。每种方法都有其优缺点,读者可以根据实际情况选择适合的方法。
学习更多关于MongoDB的Java驱动程序和它的API将帮助你更好地掌握这两个强大工具的结合使用。 记住,了解MongoDB的数据模型(如文档、集合、数据库)以及Java驱动程序提供的不同方法,是成为Java + MongoDB开发者的...
综上所述,Java、jQuery、MongoDB和MySQL在分页实现上有各自的方法。Java后端负责生成分页数据,前端使用jQuery进行异步加载和更新,而数据库(关系型或非关系型)则提供了相应的查询语法来支持分页操作。在实际项目...
目前,Java驱动通常使用的是MongoDB Java Driver,可以在Maven仓库中找到对应的依赖,例如: ```xml <groupId>org.mongodb <artifactId>mongodb-driver-sync <version>4.3.0 ``` 接下来,我们需要配置MongoDB...
在Java编程环境中,MongoDB是一个广泛使用的文档型数据库,它以JSON格式存储数据,提供了高性能、高可用性和可扩展性。本教程将详细介绍如何使用Java进行MongoDB的基本操作,包括增(添加数据)、删(删除数据)、改...
对于"java操作mongoDB实现文件上传预览打包下载"这个主题,我们将深入探讨如何利用Java与MongoDB交互,实现文件的上传、下载、预览以及打包下载等功能。 首先,我们需要在Java项目中引入MongoDB的驱动库,通常是...
skip随着数据量上去,分页性能极具下降,不推荐。这里使用spring-data-mongo实现的分页,并且实现了mongodb自增id(监听器方式)、也集成了轻量级插件MongodbPlugin,有需要的可以下载看看哦~
本资料将深入讲解如何使用Java实现对MongoDB数据库的操作。 一、MongoDB简介 MongoDB是一个基于分布式文件存储的NoSQL数据库,它摒弃了传统的关系型数据库模型,采用JSON(JavaScript Object Notation)格式的文档...
Java 中 MongoDB 使用环境详细配置 Java 中 MongoDB 使用环境详细配置是指在 Windows 平台(WinXP)上安装、运行、安装 Windows 服务的笔记,以作备忘。下面是一些重要的知识点: 1. MongoDB 的下载和安装 ...
在这个“java连接mongodb.zip”压缩包中,包含了实现这一连接所需的两个关键元素:mongo-java-driver-3.11.2.jar(MongoDB的Java驱动程序)和MongoDBClient.java(一个可能包含连接MongoDB实例的Java源代码示例)。...
在Java编程环境中,连接MongoDB数据库通常需要特定的驱动程序,这些驱动程序以JAR(Java Archive)文件的形式提供。...正确理解和使用这些库可以让你轻松地在Java项目中集成MongoDB的功能,实现高效的数据存储和检索。
本文将深入探讨如何使用Java的JDBC(Java Database Connectivity)接口与MongoDB、MySQL数据库进行数据交互,并实现相互之间的数据同步。 首先,我们需要理解JDBC,它是Java语言访问数据库的标准API,能够连接并...