【问题标题】:iterate over a list and arrange data遍历列表并排列数据
【发布时间】:2012-08-15 16:30:07
【问题描述】:

我正在从数据库中获取列表对象形式的数据列表,其中包含数据

field_id  value dt_updated
1          3    jun-6
2          5    jun-5
1          2    jun-3
3          5    jun-3

我想根据旧值和新值遍历此列表并为字段分组数据。例如:我想创建一个类似的 json:

 "field_1":
       [
           oldvalue"2"
           new value:"3"

       ],
  field_2 :
  [ oldvalue:"5"],

我想遍历列表并获取该字段的旧值和新值并放入一些对象。如何执行此操作?在某些情况下,字段将只有旧值。

【问题讨论】:

  • 到目前为止你得到了什么? (实际上,您的示例似乎是错误的,因为字段 id=1 的最新值为 3。)
  • 我不知道如何迭代列表以及给定字段组的旧值和新值。

标签: java json list hashmap


【解决方案1】:

我不知道数据库中的条目是否按 dt_update 排序,但我认为不能保证。

只需将您的条目从 db 放到 Map(id->DBUpdate) 中,其中 DBUpdate 是一些简单的值对象,带有 valueupdateDate 字段到一些 MultiMap(例如在 Google Guava 库中可用)。在通过updateDate(只需在DBUpdate中实现Comparable接口)遍历每个id的DB排序元素中的所有对象并构造适当的String(如果MultiMap中给定id只有一个值,则将只有oldValue , 否则将第一个元素用作新值,将 MultiMap 中的第二个元素用作 oldValue)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-21
    • 1970-01-01
    • 2018-10-28
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 2019-07-22
    • 1970-01-01
    相关资源
    最近更新 更多