> Java > java지도 시간 > 본문

SpringMVC가 배열 요청을 전달하는 문제에 대한 세부 정보 및 해결 방법

黄舟
풀어 주다: 2017-03-04 09:26:30
원래의
1673명이 탐색했습니다.

SpringMVC를 사용할 때 배열 참조 유형을 전달하려고 합니다. SpringMVC에는 배열 전달에 대한 몇 가지 제한 사항이 있습니다.

테스트 후: SpringMVC는 1차원 배열에 대한 매개 변수 전달을 지원하지만 다중 배열에 대한 매개 변수 전달은 지원하지 않습니다. -차원 배열. 다차원 배열을 전달하려면 다음과 같은 다른 방법을 사용해야 합니다. 1. 다차원 배열을 1차원 배열로 분할합니다. 2. 다차원 배열을 다음과 같이 변경합니다. 3. 또는 문자열로 변경하여 수신 시간 등에 처리하거나, 4 또는 모든 배열의 값을 연결하여 전송합니다(예: data=1&data=2&data=3, 세 배열의 값) 이 방법은 매우 유연합니다.

1 SpringMVC는 1차원 배열을 전달합니다. 배열 유형을 전달할 때 @requestParam()에 값을 추가해야 합니다. 그렇지 않으면 HTTP 상태 400 - 필수 long[] 매개변수 'data'가 존재하지 않습니다 오류가 발생합니다.

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


프런트엔드 요청:


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  
            });  
        }
로그인 후 복사


백엔드 코드:



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;  
    }  
}
로그인 후 복사



2개의 다차원 배열 가능 1차원 배열로 변환되거나 백엔드에서 수신될 때 처리되는 문자열로 변환됩니다.

이상은 SpringMVC 배열 요청 전달 문제에 대한 내용과 해결 방법입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿