golang dynamodb-getitem.go

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang dynamodb-getitem.go相关的知识,希望对你有一定的参考价值。

// GetItem finds a returns a single item from a dynamodb table.
// It returns an element and an error if any.
// If no element is found, will return nil without an error
func GetItem(id string, dest interface{}) error {
	tableName := "table-name"

	// create get operation information
	item := &dynamodb.GetItemInput{
		TableName: aws.String(tableName),
		Key: map[string]*dynamodb.AttributeValue{
			"ID": {S: aws.String(id)},
		},
	}

	// execute GetItem operation
	result, err := DynamoDB().GetItem(item)
	if err != nil {
		return err
	}

	return dynamodbattribute.UnmarshalMap(result.Item, &dest)
}

type Product struct {
    ID string `json:"id"`
    Name string `json:"name"`
}

func main() err {
    p := Product{}
    if err := GetItem("p-id", &p); err != nil {
        return err
    }
    return nil
}

golang 日志打印后程序直接退出

参考技术A 在一段 http get 的程序中,如果出现错误,打印日志后会导致程序退出。

将 log.Fatal 修改为 log.Println 即可解决问题。

感觉一个函数做了本不该它做的事情,有些好奇,golang 设计者的设计哲学。

以上是关于golang dynamodb-getitem.go的主要内容,如果未能解决你的问题,请参考以下文章

Golang入门到项目实战 第一个golang应用

golang编译androidso无法加载

golang如何打印内存内容

Golang入门到项目实战 golang匿名函数

json [Golang] golang #golang #snippets中有用的片段

golang使用成本高