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 !
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
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
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
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
3. Définissez ensuite quatre "RequestMapping" comme indiqué ci-dessous
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.
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
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
3.4 deleteUser est encore plus simple, supprimez simplement l'identifiant correspondant dans la carte
Test
1.getTest de l'utilisateur
2.saveTest de l'utilisateur
3.updateTest de l'utilisateur
4.
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
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é~
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
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!