donte1234567 2017-10-14 19:12
浏览 52

在Golang中解析dynamodb.GetItemOutput类型

So basically I an kinda new to golang and need to parse the output of dynamodb.GetItemOutput type. Here is a sample:

{
    Item: {
      share: {
        L: [{
        S: "Hello"
          },{
        S: "Brave"
          }]
      },
      userid: {
        S: "43"
      },
      amount: {
        S: "1000"
      },
      library: {
        L: [{
        S: "Demons"
          },{
        S: "HUMBLE"
          }]
      }
    }
}

Any help would be wonderful. Thanks a lot.

  • 写回答

1条回答 默认 最新

  • douguachan2879 2017-10-14 21:10
    关注

    I would recommend to use ODM (Object Document Mapper) for Go

    We have used the following and would recommend it.

    https://github.com/guregu/dynamo

    You can use with regular json objects and ODM will convert it to dynamodb form and manage mapping automatically.

        db := dynamo.New(session.New(), &aws.Config{Region: aws.String("us-west-2")})
        table := db.Table("Widgets")
    
        // put item
        w := widget{UserID: 613, Time: time.Now(), Msg: "hello"}
        err := table.Put(w).Run() 
    
        // get the same item 
        var result widget
        err = table.Get("UserID", w.UserID).
            Range("Time", dynamo.Equal, w.Time).
            Filter("'Count' = ? AND $ = ?", w.Count, "Message", w.Msg). // placeholders in expressions
            One(&result)
    
        // get all items
        var results []widget
        err = table.Scan().All(&results)
    

    In the above example the code just deals only with javascript objects, mapping to dynamodb is automatically taken care.

    Hope it helps.

    评论

报告相同问题?

悬赏问题

  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)