我需要从mongo数据库中获取一个项目,所以我定义了一个这样的结构
type Page struct {
PageId string `bson:"pageId"`
Meta map[string]interface{} `bson:"meta"`
}
现在我还需要将其编码为JSON,但它将字段编码为大写(我得到的是PageId而不是PageId),因此我还需要为JSON定义字段标记。我尝试过类似的方法,但没有成功:
type Page struct {
PageId string `bson:"pageId",json:"pageId"`
Meta map[string]interface{} `bson:"meta",json:"pageId"`
}
那么如何做到这一点,在一个结构中定义多个名称标记呢?
谢谢你的回答。
下面是给像我这样懒惰的人的。
不正确
type Page struct {
PageId string `bson:"pageId",json:"pageId"`
Meta map[string]interface{} `bson:"meta",json:"pageId"`
}
对的
type Page struct {
PageId string `bson:"pageId" json:"pageId"`
Meta map[string]interface{} `bson:"meta" json:"pageId"`
}
在reflect
软件包的文档中指出:
按照惯例,标记字符串是可选的空格分隔键:“值”对的串联。每个键都是非空字符串,由空格(U 0020’)、引号(U 0022’’)和冒号(U 003A’:’)以外的非控制字符组成。每个值都使用U 0022’’字符和Go字符串文字语法引用。
您需要做的是使用空格而不是逗号作为标记字符串分隔符。
type Page struct {
PageId string `bson:"pageId" json:"pageId"`
Meta map[string]interface{} `bson:"meta" json:"meta"`
}
问题内容: 我需要从mongo数据库中获取一个项目,所以我定义了一个这样的结构 现在,我还需要将其编码为JSON,但它会将字段编码为大写(我得到PageId而不是pageId),因此我还需要为JSON定义字段标签。我尝试过类似的方法,但是没有用: 那么,如何在结构中定义多个名称标签呢? 问题答案: 它在软件包的文档中说: 按照惯例,标签字符串是由空格分隔的键:“值”对的串联。每个键都是一个非空字符
问题内容: 我正在使用JAXB来基于某些XSD架构生成Java类。对于诸如以下的元素: jaxb生成以下代码: 问题是我们需要使用一些专有的XML工具,这些工具依赖于getter / setter方法的命名约定。例如,对于字段REC_LOC,他们希望使用名为getRecLoc(String value)和setRecLoc()的方法,而不是getRECLOC()。 有什么方法可以自定义jaxb生成
我正在使用docker-compose创建我的开发环境。我想建立一个特定的图像,但我不知道如何为该图像设置名称。 当我执行时,一切正常,但是我得到了一个新图像的随机名称。是否可以为生成映像设置名称?
我正在尝试使用camel Bindy将管道分隔的字符串数据转换为xml。但它正在生成标记和类名。此外,我想添加命名空间到我的标记。 我试图使用Camel进程来生成自定义标记,但它不起作用。 输出result.xml 上面发布的是给定转换的输出。在第一个标记中,它打印带有整个包和类名的标记名(例如:com.abc.domain.pojo)。另外,我试图生成命名空间,但在输出中没有生成命名空间。
问题内容: 在Golang中,JSON结构标记可以使用多个名称吗? 问题答案: 请参阅如何在结构中定义多个名称标签,以了解如何在一个结构字段上定义多个标签。 您也可以使用a 代替您的结构。 或者,您可以在结构中使用这两种类型,并使用make方法将返回正确的模式。
问题 你想实现一个类,除了使用 __init__() 方法外,还有其他方式可以初始化它。 解决方案 为了实现多个构造器,你需要使用到类方法。例如: import time class Date: """方法一:使用类方法""" # Primary constructor def __init__(self, year, month, day): self.