Maison > développement back-end > Golang > go : Définition des champs des pièces autres que le nom et le type

go : Définition des champs des pièces autres que le nom et le type

PHPz
Libérer: 2024-02-09 09:39:19
avant
1086 Les gens l'ont consulté

go : Définition des champs des pièces autres que le nom et le type

l'éditeur php Yuzai vous présente "go : définitions de champs de pièces autres que le nom et le type". Dans le langage Go, en plus du nom et du type du champ, d'autres attributs et labels peuvent être définis pour le champ. Vous pouvez contrôler la visibilité et l'accès à un champ en y ajoutant des propriétés. En ajoutant des balises aux champs, vous pouvez ajouter des métadonnées supplémentaires aux champs pour décrire les caractéristiques des champs. Ces définitions de champs peuvent être utilisées dans les structures, offrant ainsi plus de flexibilité et d'évolutivité pour la conception et la mise en œuvre des programmes.

Contenu de la question

J'ai vu cette définition de structure :

type Resource struct {
    Attrs []Attribute `parquet:",list"`
    ServiceName      string  `parquet:",snappy,dict"`
    Cluster          *string `parquet:",snappy,optional,dict"`
    ....
}
Copier après la connexion

Je comprends les deux premières parties de la définition du champ (nom, type). Mais que signifie cette dernière partie ? J'aime

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

解决方法

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

Le texte dans les backticks décrit les balises de structure Go accessibles via la réflexion (voir reflect.StructTagencoding/json 的结构标记的使用对于 MarshalUnmarshal pour plus de détails).

Ces balises sont généralement utilisées par des codes qui rassemblent/décomposent dans différents formats - décrivant généralement comment un champ doit être décodé ou codé. L'utilisation de balises de structure de encoding/json est utile pour Marshal <p> et <code>Unmarshal fonction. github.com/segmentio/parquet 有关-go Votre exemple semble fonctionner avec le package

. Il contient une brève

documentation sur la façon dont le package interprète les balises de structure

.
  • Surtout : snappy
  • dict Encodez les colonnes à l'aide de la compression Snappy
  • Activez les fichiers encodés Dict à l'aide de
  • Parquet可选.
  • list indique que la colonne Parquet est facultative.
🎜 indique que le type logique parquet LIST doit être utilisé. 🎜 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal