在我的 java 程序中,我查询一个数据库并获得一个结果集。检索到的字段如下:
- server_id
- 威胁级别
- client_id
- 攻击次数
其中每条记录代表来自某个 IP 的攻击。我不需要 IP,但想知道基于威胁级别沿 x 轴绘制的特定服务器上的攻击总数,以及特定客户端沿 y 轴组织的所有服务器上的攻击总数降序排列。
查询后,我将结果集的字段存储到对象的哈希映射中,如果该键已经存在,则检查哈希映射后,键为 server_id;如果是,则更新攻击总数。通过这样做,我可以获取服务器的重复记录,将其保留为一个对象,并且只需汇总名为“num_of_attacks”的字段。现在我的下一步是组织数据以绘制图表的最后一步,但由于我的经验不足,我不确定正确的方法。我的数据库头脑告诉我使用字段 client_id 和 total_num_attacks 创建另一种类型的列表或集合,其中 client_id 是键,total_num_attacks 表示该客户端所有服务器上的所有攻击的总和,这可以以某种方式链接到 hashmap通过 client_id 的服务器。
我的问题是,这可能吗?我研究了 LinkedLists,但我不确定它是否能完全满足我的需求。是否有另一种更适合我需要的数据结构?