Maison >développement back-end >Golang >Découvrez si var in go peut initialiser la structure

Découvrez si var in go peut initialiser la structure

藏色散人
藏色散人avant
2021-11-30 15:48:172609parcourir

Cet article est introduit par la colonne tutoriel go language sur la question de savoir si var peut initialiser la structure en golang. J'espère qu'il sera utile aux amis dans le besoin !

Contexte

Le petit article précédent a simplement utilisé goland pour créer la démo golang la plus simple. Il n'a aucune valeur pratique et utilise moins de syntaxe golang. Dans cette section, nous effectuons une opération crud simple et comprenons rapidement certaines opérations courantes de. golang, et être capable de maîtriser la syntaxe de base de golang

Comprendre la syntaxe à l'avance

  • Convertir la chaîne en int Utiliser la méthode strconv.Atoi dans golang
  • La valeur de retour de la méthode dans golang Là peut être multiple, c'est différent de java, par exemple, la méthode map[id], la première valeur de retour est value, la deuxième valeur de retour est de type bool, indiquant s'il y a

  • et la sérialisation json en java La méthode est plus similaire, la désérialisation est la méthode json.Unmarshal, le premier paramètre est un tableau d'octets, le deuxième paramètre est l'"adresse" de l'objet sérialisé, ajoutez un &, la méthode de sérialisation est la méthode json.Marshal, faites attention à le tableau d'octets renvoyé par cette méthode

La syntaxe utilisée dans la section ci-dessus est souvent utilisée dans les exercices suivants. Les amis peuvent simplement la mémoriser

Exercices

1. pour compléter l'ajout, la suppression et la modification de cette instance de structure. Nous définissons une structure comme indiqué ci-dessous, avec trois attributs Id, Name, Age

Découvrez si var in go peut initialiser la structure

2 Parce que l'ajout se fait en mémoire Pour la vérification de la suppression et de la modification, le. La base de données n'est pas utilisée, nous devons donc définir une variable globale comme Java et l'utiliser comme conteneur pour enregistrer les données. Comme le montre le code source ci-dessous, nous utilisons le mot-clé var pour définir une carte de variable globale et initialiser un enregistrement

Découvrez si var in go peut initialiser la structure

3. Définissez ensuite quatre "RequestMapping" comme indiqué ci-dessous

Découvrez si var in go peut initialiser la structure

3.1 La logique principale de la méthode getUser est d'obtenir l'identifiant du paramètre transmis, puis d'obtenir les informations utilisateur de base à partir de la variable globale en fonction de l'identifiant.

Découvrez si var in go peut initialiser la structure

3.2 saveUser, nous traitons les requêtes POST. Maintenant, en développement, nous analysons généralement les données json transmises à celles correspondantes, puis les enregistrons dans nos variables globales

Découvrez si var in go peut initialiser la structure

3.3 updateUser est similaire à saveUpdate For. simplicité, nous ne jugeons ici que si l'identifiant correspondant existe dans la carte globale, changez l'objet utilisateur correspondant à cet identifiant sans effectuer de comparaison et de remplacement d'attribut

Découvrez si var in go peut initialiser la structure

3.4 deleteUser est encore plus simple, supprimez simplement l'identifiant correspondant dans la carte

Découvrez si var in go peut initialiser la structure

Test

1.getTest de l'utilisateur

Découvrez si var in go peut initialiser la structure

2.saveTest de l'utilisateur

Découvrez si var in go peut initialiser la structure

Découvrez si var in go peut initialiser la structure

3.updateTest de l'utilisateur

Découvrez si var in go peut initialiser la structure

Découvrez si var in go peut initialiser la structure

4.

Découvrez si var in go peut initialiser la structure

Résumé

Cette section complète principalement l'ajout, la suppression, la modification et la recherche dans la mémoire. En fait, si vous maîtrisez parfaitement la grammaire de base du golang, vous aurez certainement l'impression que c'est enfantin, mais cela n'a pas d'importance, certains nouveaux étudiants gagneront certainement quelque chose, si vous regardez attentivement le code ci-dessus, vous constaterez qu'il n'y a que deux façons pour nous d'analyser les paramètres. L'une est localhost:9090/user?id=. 1, quel est le moyen d'obtenir l'identifiant. Get est d'obtenir le json dans la requête de publication, si nous imaginons que @requestMapping(value="/user/{name}/ au printemps mvc est localhost:9090/user?id= 1, la façon d'obtenir l'identifiant est d'obtenir l'identifiant dans la demande de publication json, si nous voulons faire cela comme @requestMapping(value="/user/{name}/{id}") dans spring mvc, ce sera le cas. ne fonctionne pas, puis obtenez les paramètres via la méthode @pathvariable, ce qui est très utile dans notre travail quotidien, mais malheureusement, golang ne prend pas en charge nativement un travail de liaison de paramètres aussi complexe. Nous allons résoudre ce problème via une structure de données Trie

. Adresse du code source

https://github.com/BazingaLyn /jarvis

Si vous aimez cette série de tutoriels d'introduction, j'espère que vous pourrez suivre et aimer la collection Merci pour votre qualité~

Œuf de Pâques.

Si vous tapez le code à la main, vous constaterez que (écrivain http.ResponseWriter, request *http.Request) doit être écrit plusieurs fois. Goland fournit une méthode pour générer rapidement des touches de raccourci. Cependant, les paramètres des touches de raccourci de chacun peuvent. être différent, mais vous pouvez utiliser la méthode suivante pour générer rapidement une méthode

Découvrez si var in go peut initialiser la structure

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer