Heim > Backend-Entwicklung > Golang > go: Felddefinition anderer Teile als Name und Typ

go: Felddefinition anderer Teile als Name und Typ

PHPz
Freigeben: 2024-02-09 09:39:19
nach vorne
1086 Leute haben es durchsucht

go: Felddefinition anderer Teile als Name und Typ

php-Editor Yuzai stellt Ihnen „go: Felddefinitionen für andere Teile als Name und Typ“ vor. In der Go-Sprache können zusätzlich zum Namen und Typ des Feldes weitere Attribute und Beschriftungen für das Feld definiert werden. Sie können die Sichtbarkeit und den Zugriff eines Felds steuern, indem Sie ihm Eigenschaften hinzufügen. Durch das Hinzufügen von Tags zu Feldern können Sie den Feldern zusätzliche Metadaten hinzufügen, um die Eigenschaften der Felder zu beschreiben. Diese Felddefinitionen können in Strukturen verwendet werden und bieten mehr Flexibilität und Skalierbarkeit für den Programmentwurf und die Implementierung.

Frageninhalt

Ich habe diese Strukturdefinition gesehen:

type Resource struct {
    Attrs []Attribute `parquet:",list"`
    ServiceName      string  `parquet:",snappy,dict"`
    Cluster          *string `parquet:",snappy,optional,dict"`
    ....
}
Nach dem Login kopieren

Ich verstehe die ersten beiden Teile der Felddefinition (Name, Typ). Aber was bedeutet dieser letzte Teil? Gefällt mir

parquet:",snappy,dict"parquet:",snappy,dict"

解决方法

反引号中的文本描述了可以通过反射访问的 Go 结构标记(请参阅 reflect.StructTagWorkaround

Der Text in Backticks beschreibt Go-Struktur-Tags, auf die über Reflektion zugegriffen werden kann (siehe reflect.StructTagencoding/json 的结构标记的使用对于 MarshalUnmarshal für Details).

Diese Tags werden typischerweise von Codes verwendet, die in verschiedene Formate ein-/auslagern – normalerweise beschreiben sie, wie ein Feld dekodiert oder kodiert werden soll. Die Verwendung von Struktur-Tags von encoding/json ist nützlich für Marshal <p> und <code>Unmarshal Funktion. github.com/segmentio/parquet 有关-go Ihr Beispiel scheint mit dem Paket

zu funktionieren. Es enthält eine kurze

Dokumentation darüber, wie das Paket Struktur-Tags interpretiert

.
  • Besonders: snappy
  • dict Spalten mit Snappy-Komprimierung kodieren
  • Aktivieren Sie Dict-codierte Dateien mit
  • Parquet可选.
  • list gibt an, dass die Spalte „Parkett“ optional ist.
🎜 gibt an, dass der logische Typ Parkettliste verwendet werden soll. 🎜 🎜

Das obige ist der detaillierte Inhalt vongo: Felddefinition anderer Teile als Name und Typ. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage