码迷,mamicode.com
首页 > 其他好文 > 详细

golang中的struct标签tag

时间:2019-10-13 18:54:21      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:mic   ima   and   fun   code   reflect   string   image   ola   

这个以前用beego时涉及过,时间久了,就忘了。

现在k8s里的controller,一样用了这个语法,

再拾起来吧。

http://www.01happy.com/golang-struct-tag-desc-and-get/

但这个帖子中,bson的tag没有测试成功,再议吧。

package main

import (
	"encoding/json"
	"fmt"
	"reflect"
)

func main() {
	type User struct {
		UserId   int    `json:"user_id_json" bson: "user_id_bson"`
		UserName string `json:"user_name_json" bson: "user_name_bson"`
	}

	// 输出json格式
	u := &User{UserId: 1, UserName: "tony"}
	j, _ := json.Marshal(u)
	fmt.Println(string(j))
	// 输出内容:{"user_id_json":1,"user_name_json":"tony"}

	// 获取tag中的内容
	t := reflect.TypeOf(u)
	field := t.Elem().Field(0)

	fmt.Println(field.Tag)
	// 输出:json:"user_id_json" bson: "user_id_bson"
	fmt.Println(field.Tag.Get("json"))
	// 输出:user_id_json
}

  技术图片

golang中的struct标签tag

标签:mic   ima   and   fun   code   reflect   string   image   ola   

原文地址:https://www.cnblogs.com/aguncn/p/11667385.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!