中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Springmvc的post請求json格式參數

發布時間:2022-11-10 17:12:56 來源:億速云 閱讀:247 作者:iii 欄目:編程語言

這篇文章主要介紹了怎么用Springmvc的post請求json格式參數的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇怎么用Springmvc的post請求json格式參數文章都會有所收獲,下面我們一起來看看吧。

分析:

  這里我們只做get請求和post 請求 分析。

  1) springmvc 的配置方法不說了,保證包含<mvc:annotation-driven/> 即可。

  2) 必備的jar 必不可少。springmvc 內置的json 處理包是 jackson,完整引入方式。引入包有jackson-databind,jackson-core,jackson-annotations

<dependency>
      <groupId>com.fasterxml.jackson.module</groupId>
      <artifactId>jackson-module-jaxb-annotations</artifactId>
      <version>${jackson.version}</version>
    </dependency>

  3) 采用注解方式來實現Controller  

package com.bkc.bpmp.modules.external.controller;

import java.io.IOException;
import java.util.Map;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.bkc.bpmp.modules.external.pojo.ExternalSingleResult;


@Controller
@RequestMapping("/external")
public class Test
{
    @RequestMapping(value = "/test1")
    @ResponseBody
    public Object test1(@RequestBody String  pageData)
        throws IOException
    {
        System.out.println(pageData);
        return pageData;
    }
    
    @RequestMapping(value = "/test2")
    @ResponseBody
    public Object test2(@RequestParam String  pageData)
        throws IOException
    {
        System.out.println(pageData);
        return pageData;
    }
    
}

  4)對應test2,采用的是 @RequestParam 方式獲取的參數

    其參數格式就是一般 a=a&b=b 模式

    而對于test1,采用的是 @RequestBody 方式獲取的參數

    其參數格式就是 json格式的字符串,{"a":"valueA","b":"valueB"}

  5)在我使用 HTTP請求工具測試 test2 的時候,一直報 415

    HTTP 415 錯誤 – 不支持的媒體類型(Unsupported media type)

    因為我設置的請求格式為application/json ,應該為 application/json;charset=UTF-8

  6)使用ajax 請求來測試,測試方法如下

    在TestAjax()方法中,data 是一個json 數組,用這種方式去發送請求的時候,其實本質上就是參數格式為  a=a&b=b 模式。TestAjax2() 方法,傳遞的則是 json 字符串

function TestAjax() {
  var datas = {
          "equObjCode" : "EO_10HLB21AN001.QY-GL01.JZ-01.TY"
        };
  var url = "/external/test2";
  var obj = $("#result");
  var data = $.parseJSON(datas);
  $.ajax({
    type : "get",
    async : false,
    url : url,
    data : data,
    //cache : false, //默認值true
    dataType : "jsonp",
    jsonp : "callback",//傳遞給請求處理程序或頁面的,用以獲得jsonp回調函數名的參數名(默認為:callback)
    jsonpCallback : "jsonpCallback",
    //自定義的jsonp回調函數名稱,默認為jQuery自動生成的隨機函數名
    //如果這里自定了jsonp的回調函數,則success函數則不起作用;否則success將起作用
    success : function(data) {
      obj.html(JSON.stringify(data));
      //obj.parent().css("background","#ddd");
    },
    error : function(XMLHttpRequest, textStatus) {
      obj.html(XMLHttpRequest.status + ","
          + XMLHttpRequest.readyState + ",error="
          + textStatus);
    }
  });
}
    
function TestAjax2() {
  var datas = {
      "equObjCode" : "EO_10HLB21AN001.QY-GL01.JZ-01.TY"
    };
  var url = "/external/test1";
  var obj = $("#result");
  $.ajax({
    type : "post",
    url : url,
    data : data,
    dataType : "json",
          contentType : 'application/json;charset=UTF-8',
    success : function(data) {
      obj.html(JSON.stringify(data));
    },
    error : function(XMLHttpRequest, textStatus) {
      obj.html(XMLHttpRequest.status + ","
          + XMLHttpRequest.readyState + ",error="
          + textStatus);
    }
  });
}

  7)

  jsonp 只支持get 請求,不支持post 請求。

  post模式下,使用@RequestBody 綁定請求對象,Spring會幫你進行協議轉換,將Json、Xml協議轉換成你需要的對象。

關于“怎么用Springmvc的post請求json格式參數”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“怎么用Springmvc的post請求json格式參數”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南郑县| 遂川县| 尚义县| 河南省| 和平县| 贵港市| 梓潼县| 邹平县| 普陀区| 高尔夫| 商洛市| 昭平县| 曲阳县| 楚雄市| 宁德市| 新源县| 平潭县| 合阳县| 奉贤区| 富民县| 乌拉特后旗| 泸西县| 彩票| 神池县| 长乐市| 石渠县| 德兴市| 井研县| 五指山市| 佛学| 类乌齐县| 鸡东县| 台州市| 科尔| 筠连县| 鹤山市| 漳平市| 怀仁县| 宁强县| 枣阳市| 闵行区|