springMvc直接接收json數據自動轉化為Map ,必須加上@RequestBody注解並且前台ajax發送請求的時候需要對數據進行格式化
$.ajax({ type : "POST", url : "/search", data :JSON.stringify(searchData), contentType:"application/json", dataType : "json", success : function(data) { } });
searchData為需要提交的數據,是js對象,或數組,或其他。
@RequestMapping(value = "/search",method = RequestMethod.POST) public void search (@RequestBody Map<String,String> map){ System.out.println("傳進來的參數:" + map); }
重點在於:
contentType:"application/json" :用來告訴服務端消息主體是序列化后的 JSON 字符串。
JSON.stringify() :把js對象轉換成json字符串。
@RequestBody :聲明springmvc的接收方式。