Comment utiliser les paramètres de demande en Java avec Spring Boot
Dans Spring Boot, les méthodes de traitement des paramètres de demande incluent: 1. Utilisez @RequestParam pour obtenir des paramètres de requête, qui prennent en charge les valeurs requises, facultatives et par défaut; 2. Recevez plusieurs paramètres du même nom via la liste ou le type de carte; 3. Liez plusieurs paramètres à l'objet en combinaison avec @ModeLatTribute; 4. Utilisez @Pathvariable pour extraire des variables dans le chemin d'URL; 5. Utiliser @RequestParam pour traiter les données du formulaire dans les demandes de poste; 6. Utilisez la carte pour recevoir tous les paramètres de demande. La sélection correcte d'annotations peut analyser efficacement les données demandées et améliorer l'efficacité du développement.
Dans Spring Boot, la gestion des paramètres de demande est simple grâce aux annotations intégrées et au framework Web Spring. Que vous créiez des API REST ou des applications Web, vous devrez souvent extraire des données des demandes HTTP entrantes. Voici comment utiliser efficacement les paramètres de demande en Java avec Spring Boot.
1. Utilisation @RequestParam
pour les paramètres de requête
La façon la plus courante d'accéder aux paramètres de demande (c'est-à-dire des paramètres de requête dans l'URL) est avec l'annotation @RequestParam
.
Exemple:
@RestController classe publique UserController { @Getmapping ("/ utilisateurs") public String getUsers (@RequestParam String Name) { Renvoie "bonjour", nom; } }
Pour une demande comme GET /users?name=John
, cela renvoie Hello, John
.
Paramètres et défaut facultatifs
Vous pouvez faire des paramètres facultatifs et fournir des valeurs par défaut:
@Getmapping ("/ utilisateurs") public String getUsers (@RequestParam (obligatoire = false) Nom de la chaîne) { if (name == null) { retourner "Bonjour, invité"; } Renvoie "bonjour", nom; }
Ou utilisez defaultValue
:
@Getmapping ("/ utilisateurs") public String getUsers (@RequestParam (defaultValue = "invité") Nom de la chaîne) { Renvoie "bonjour", nom; }
Paramètres multiples
Vous pouvez avoir plusieurs paramètres:
@Getmapping ("/ utilisateurs") GetUsers de chaînes publiques ( @RequestParam Nom de la chaîne, @RequestParam Int Age) { Retour "Nom:" Nom ", âge:" Age; }
Demande: GET /users?name=Alice&age=30
2. Gestion des paramètres du tableau ou de la liste
Si un paramètre apparaît plusieurs fois (par exemple , ?hobby=reading&hobby=music
), vous pouvez le lier à une liste ou un tableau:
@Getmapping ("/ utilisateurs") Public String GetUsers (@RequestParam List <string> Hobby) { Retour "Hobbies:" Hobby; }
Cela capturera toutes les valeurs hobby
dans une liste.
3. Utilisation @RequestParam
avec des objets (liaison indirecte)
Bien que @RequestParam
ne se lie pas directement aux objets complexes, vous pouvez cartographier plusieurs paramètres dans un DTO en utilisant une approche personnalisée ou vous fier aux attributs du modèle dans les soumissions de formulaire. Cependant, pour les paramètres de requête, une solution de contournement courante consiste à utiliser une classe de wrapper avec @ModelAttribute
.
Exemple avec @ModelAttribute
:
classe publique Use UserQuery { nom de chaîne privé; Âge entier privé; // Getters et Setters } @Getmapping ("/ utilisateurs") public String GetUsers (@ModelAttribute UserViery Query) { return "Name:" query.getName () ", Âge:" query.getage (); }
Maintenant, GET /users?name=Bob&age=25
sera cartographier automatiquement.
4. Variables de chemin avec @PathVariable
Parfois, vous voulez des paramètres du chemin d'url, pas de la chaîne de requête:
@Getmapping ("/ utilisateurs / {id}") public String getuser (@pathvariable long id) { Renvoie "ID utilisateur:" ID; }
Demande: GET /users/123
→ Renvoie User ID: 123
Vous pouvez avoir plusieurs variables de chemin:
@GetMapping ("/ Users / {Userid} / Orders / {OrderId}") GRANDEMENT STRING PUBLIC ( @Pathvariable long utilisateur, @Pathvariable long orderId) { Renvoie "User:" UserId ", Order:" OrderId; }
5. Paramètres de demande dans les demandes de poste
@RequestParam
fonctionne également avec les données du formulaire dans les demandes de poste (par exemple, application/x-www-form-urlencoded
):
@Postmapping ("/ utilisateurs") Public String CreateUser (@RequestParam String Name, @RequestParam int Age) { // Enregistrer la logique utilisateur Renvoie "l'utilisateur créé:" nom "," âge; }
Pour les charges utiles JSON, utilisez à la place @RequestBody
- mais ce ne sont pas des paramètres de demande; C'est une demande d'analyse du corps.
6. Advanced: Carte tous les paramètres de demande
Pour obtenir tous les paramètres en tant que carte:
@Getmapping ("/ utilisateurs") public String getUsers (@RequestParam Map <String, String> AllParams) { Renvoie "Tous les paramètres:" AllParams; }
Demande: GET /users?name=John&role=admin
→ renvoie {name=John, role=admin}
Utilisez Map<string object></string>
Si vous vous attendez à des listes (par exemple, des touches répétées).
Points clés pour se souvenir
- Utilisez
@RequestParam
pour les paramètres de requête / formulaire. - Utilisez
@PathVariable
pour les valeurs dans le chemin d'url. - Définir
required = false
ou utiliserdefaultValue
pour les paramètres facultatifs. - Utilisez
Map
pour capturer les paramètres dynamiques ou inconnus. - Pour les corps JSON, utilisez
@RequestBody
, pas@RequestParam
.
Fondamentalement, Spring Boot facilite l'extraction des paramètres de demande avec un code propre et lisible. Faites simplement correspondre l'annotation à votre cas d'utilisation et laissez le printemps gérer l'analyse.
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

CheckkSearchSettings like "MatchEnteRireCellContents" et "MatchCase" ByExpandingOptionsInFindanDreplace, garantissant "lookin" issettominuesand »dans" TOCORRECTSCOPE; 2.LOORHFORHIDDENCHARACTER

Préparez-vous en application par rapport à Mavenorgradletobuildajarorwarfile, externalisationConfiguration.2.ChoOSEADPLOYENDIRONMENT: Runonbaremetal / vmwithjava-jarandsystemd, deploywarontomcat, compeneriserisewithdocker, orusecloudplatformslikelise.

L'utilisation de SLF4J combinée avec la journalisation ou le log4j2 est le moyen recommandé de configurer les journaux dans les applications Java. Il introduit des bibliothèques API et implémentation en ajoutant des dépendances Maven correspondantes; 2. Obtenez l'enregistreur via le loggerfactory de SLF4J dans le code et écrivez le code journal découplé et efficace à l'aide de méthodes de journalisation paramétrée; 3. Définir le format de sortie du journal, le niveau, la cible (console, le fichier) et le contrôle du journal du package via Logback.xml ou les fichiers de configuration log4j2.xml; 4. Activer éventuellement la fonction de balayage de fichiers de configuration pour atteindre un ajustement dynamique du niveau de journal, et Springboot peut également être géré via des points de terminaison de l'actionneur; 5. Suivez les meilleures pratiques, y compris

CASTORENablesxml-to-javaObjectMappingViadefaultConverionsOrexplicitMappingFiles; 1) DefinejavaclasseswithGetters / seters; 2) useUnmarShallertOConvertXmltoObjects; 3)

Dans JavaScript, la méthode la plus courante pour ajouter des éléments au début d'un tableau est d'utiliser la méthode Unsich (); 1. En utilisant unsith () modifiera directement le tableau d'origine, vous pouvez ajouter un ou plusieurs éléments pour retourner la nouvelle longueur du tableau ajouté; 2. Si vous ne souhaitez pas modifier le tableau d'origine, il est recommandé d'utiliser l'opérateur d'extension (tel que [Newelement, ... Arr]) pour créer un nouveau tableau; 3. Vous pouvez également utiliser la méthode CONCAT () pour combiner le nouveau tableau d'éléments avec le numéro d'origine, renvoyez le nouveau tableau sans modifier le tableau d'origine; En résumé, utilisez Unsich () lors de la modification du tableau d'origine et recommandez l'opérateur d'extension lorsque vous gardez le tableau d'origine inchangé.

GOTYPICAL OFFERSBETTERRUNTIMEPERFORMANCE AVEC LA MAINTRÉE DE PUTHROUGHTANDLOWERLATENCE, ENTERTFORI / O-HEAVYSERVICES, DUETOITSLIGHT LONDEGOROUTINESANDERFICENTSCHEDULL

ToworkwithJSONinJava,useathird-partylibrarylikeJackson,Gson,orJSON-B,asJavalacksbuilt-insupport;2.Fordeserialization,mapJSONtoJavaobjectsusingObjectMapperinJacksonorGson.fromJson;3.Forserialization,convertJavaobjectstoJSONstringsviawriteValueAsString

TheassertKeywordInjavaisUsedTovalIdateShandshandingsDuringDevelopment, ThrowinganAssertionErroriftheconditionisfalse.2.ithastwoforms: AssertCondition; AndSersertCondition: Message; avecthelatterProvidActureCustomerMessage.3.
