1. 程式人生 > >《SpringMvc》---實現JSON資料互動

《SpringMvc》---實現JSON資料互動

前言

  • 現在企業中好多專案都用Json傳送資料,因為Json在企業開發中已經作為通用的介面引數型別,並且Json資料在頁面(客戶端)解析很方便。下面是Json的定義形式。
var obj={”name”:”張三”,”age”:12}
Json資料解析形式:obj.name

現在有兩種需求:

  • 前臺Jsp向Handler中傳遞Json資料,Handler向前臺返回Json資料。
  • 前臺Jsp向Handler中傳遞鍵值對形式,Handler返回json資料。

第一種,前臺傳json,Handler返回的也是Json

Js程式碼

function requestjson
(){
$.ajax({ type:'post', url:'${pageContext.request.contextPath }/requestJson.action', contentType:'application/json;charset=utf-8', data:'{"name":"張三","age":12}',//json串 success:function(data){ alert(data.name); } }); }

Handler程式碼

@ResponseBody
@RequestMapping("/requestJson") public Student requestJson(@RequestBody Student student){ System.out.println(student); return student; }

第二種,前臺傳遞鍵值對,後臺返回的是Json

Js程式碼

function responsejson(){
    $.ajax({
        type:'post',
        url:'${pageContext.request.contextPath }/responseJson.action'
, data:'name=張三&age=12',//key/value success:function(data){ alert(data.name); } }); }

Handler程式碼

@ResponseBody
@RequestMapping("/responseJson")
public  Student responseJson(Student student) throws Exception{
    System.out.println(student);
    return student;
}

小結

  • 這是利用JQuery的Ajax來實現前後臺傳遞Json資料的,再Handler中,如果想接受前臺傳遞過來的Json資料,那麼在形參前面加上@RequestBody註解,如果Handler也想返回Json資料,那麼可以在方法上加上@ResponseBody註解。