Maison > Java > javaDidacticiel > le corps du texte

Détails et solutions au problème du passage des requêtes de tableau par SpringMVC

黄舟
Libérer: 2017-03-04 09:26:30
original
1659 Les gens l'ont consulté

Lors de l'utilisation de SpringMVC, nous souhaitons transmettre des types de référence de tableau. SpringMVC a certaines restrictions sur le passage de tableaux :

Après les tests : SpringMVC prend en charge le passage de paramètres pour les tableaux unidimensionnels, mais ne prend pas en charge le passage de paramètres pour les tableaux multiples. -tableaux multidimensionnels. Si vous souhaitez transmettre un tableau multidimensionnel, nous devons utiliser d'autres méthodes telles que : 1. Diviser le tableau multidimensionnel en un tableau unidimensionnel 2. Changer le tableau multidimensionnel en un tableau multidimensionnel. définissez-le et transmettez-le ; 3. Ou changez-le en chaîne, traitez-le pendant le temps de réception, etc., 4 , ou concaténez et transférez les valeurs dans tous les tableaux (par exemple : data=1&data=2&data=3, représentant les valeurs de trois tableaux) La méthode est très flexible.

1 SpringMVC transmet un tableau unidimensionnel : lors de la transmission du type de tableau, vous devez ajouter une valeur dans @requestParam(), sinon une erreur HTTP Status 400 - Le paramètre long[] requis 'data' n'est pas présent se produira.

Par exemple : @RequestParam(value = "data[]")long[] data


Requête frontale :


var dataArr = new Array();  
        for(var i = 0; i < 10; i++){  
            dataArr.push(i);  
        }  
        $.ajax({  
                url : "test/arrayParam.shtml",  
                data : {  
                    "datas" : dataArr  
                },  
                dataType : "json",  
                success : function(data) {  
                    alert(data);  
                },  
                async : false  
            });  
        }
Copier après la connexion


Code backend :



package com.pyc.search.view.controller;  
  
import org.springframework.stereotype.Controller;  
import org.springframework.web.bind.annotation.RequestMapping;  
import org.springframework.web.bind.annotation.RequestParam;  
import org.springframework.web.bind.annotation.ResponseBody;  
  
/** 
 * 创建时间:2014-12-24 上午11:52:00 
 *  
 * @author zhangtianyou 
 */  
@Controller  
@RequestMapping("/test")  
public class TestController {  
  
    @RequestMapping("/arrayParam")  
    public @ResponseBody  
    int test1(@RequestParam(value = "datas[]") long[] datas) {  
  
        return datas.length;  
    }  
}
Copier après la connexion

  • Ce qui précède contient les détails et les solutions au problème de la transmission des requêtes de tableau par SpringMVC. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

  • Étiquettes associées:
    source:php.cn
    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
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!