java - 在 Java/处理中过滤数据

标签 java performance processing

我正在开发一个基于 map 的数据可视化项目,该项目从 XML 文件中抓取数据。位置根据地理位置放置在 map 上,并且位置可以通过鼠标单击进行交互,然后显示有关该位置的信息。我需要开始根据每个位置的信息过滤结果。例如:假设我想显示有关树木的信息,并且我知道它们的位置和类型。我想使用复选框过滤进出胡桃木、樱桃木、橡木。 我正在尝试从设计的角度计划如何解决这个问题。目前,所有信息都是直接从 XML 文件中提取,很少进入新的数组/列表。当我试图完成这项任务时,有什么建议吗?如果您需要我详细说明或想要更多信息,请告诉我。

编辑: 如果这很模糊,我很抱歉,我不完全确定如何提出这个问题。所以现在我正在获取 311 数据并根据我想要显示的信息将信息放入数组中。假设我想要一个地址。 (此时, map 上已填充了 311 个数据(假设有 200 个地点)中的所有单独位置)我单击一个位置,该位置将与包含所有地址的数组中的索引相关联。所以任何时候我都可以使用索引从数组中获取信息。有多个数组保存地址、报告类型、时间等信息。我希望 map 上的位置按报告类型排序。我希望这更有意义。

最佳答案

我希望我理解正确,这似乎是一个常规的数据管理系统要求,很难用几句话来涵盖此类系统,但简而言之,我会说这些系统分为几层:

  1. 数据层,通常是一些数据库,尽量安装使用mysql之类的数据库
  2. 数据访问层,我知道您正在使用java,请考虑使用hibernate,它可以让您使用对象而不是RDBMS表来描述和使用数据库,在这里您还可以进行sql/hql查询
  3. 某些业务层在这些虚拟数据对象之上拥有逻辑,或者可能连接到某些外部服务
  4. 将这些数据提供给您的客户端,无论它在什么平台上运行,是 Java 客户端还是网络浏览器

查看java spring http://projects.spring.io/spring-framework/关于它在实践中是如何完成的。

然后,如果您觉得来回服务器获取更多数据对性能影响太大,您可能会决定在客户端缓存一些信息。

最后,永远记住唐纳德·高德纳 (Donald Knuth) 所说的

about 97% of the time: premature optimization is the root of all evil.

关于java - 在 Java/处理中过滤数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19965057/

相关文章:

java - 如何将多个Java应用程序连接到同一个Ignite集群?

MySQL SELECT 效率

php - CodeIgniter 中 pconnect 选项的优点/缺点

javascript - 处理js草图不加载

java - 当物体撞击墙壁边缘时,如何根据其前进方向改变其方向?

java - 使用 DOM 解析器将 XML 文件输出到文本文件?

java - 如何强制 AmazonSQSBufferedAsyncClient 刷新消息?

java - com4j 与 jacob 从 Java 调用 COM 方法

performance - JVM 收集时间是否随 JVM RAM 大小呈指数增长?