Rumah  >  Artikel  >  hujung hadapan web  >  Spring mvc menerima kemahiran json object_javascript

Spring mvc menerima kemahiran json object_javascript

WBOY
WBOYasal
2016-05-16 15:26:231693semak imbas

Artikel ini memperkenalkan kaedah spring mvc menerima data json melalui contoh kod Perincian khusus adalah seperti berikut:

Terima JSON

Menggunakan anotasi @RequestBody pada bahagian hadapan hanya memerlukan anda menyerahkan JSON yang diformatkan kepada Pengawal dan Spring akan menyusunnya secara automatik menjadi kacang.

1) Atas dasar menggunakan kaedah pertama untuk mengembalikan JSON dalam projek di atas, tambah kaedah berikut:

Kod Java

  @RequestMapping(value="/add",method=RequestMethod.POST, headers = {"content-type=application/json","content-type=application/xml"}) 
  @ResponseBody 
  public Object addUser(@RequestBody User user) 
  { 
    System.out.println(user.getName() + " " + user.getAge()); 
    return new HashMap<String, String>().put("success", "true"); 
  } 

POJO di sini adalah seperti berikut:

Kod Java

  public class User { 
    private String name; 
    private String age; 
    //getter setter 
  } 

2) Di bahagian hadapan, kita boleh menggunakan jQuery untuk memproses JSON. Dari sini, saya mendapat pemalam jQuery yang boleh mengembalikan data borang ke dalam objek JSON:

Kod Js

 $.fn.serializeObject = function(){ 
    var o = {}; 
    var a = this.serializeArray(); 
    $.each(a, function(){ 
      if (o[this.name]) { 
        if (!o[this.name].push) { 
          o[this.name] = [o[this.name]]; 
        } 
        o[this.name].push(this.value || ''); 
      } 
      else { 
        o[this.name] = this.value || ''; 
      } 
    }); 
    return o; 
  }; 

Berikut ialah kod untuk menerima dan menghantar JSON menggunakan jQuery:

Kod Js

$(document).ready(function(){ 
    jQuery.ajax({ 
      type: 'GET', 
      contentType: 'application/json', 
      url: 'jsonfeed.do', 
      dataType: 'json', 
      success: function(data){ 
        if (data && data.status == "0") { 
          $.each(data.data, function(i, item){ 
            $('#info').append("姓名:" + item.name +",年龄:" +item.age); 
          }); 
        } 
      }, 
      error: function(){ 
        alert("error") 
      } 
    }); 
    $("#submit").click(function(){ 
      var jsonuserinfo = $.toJSON($('#form').serializeObject()); 
      jQuery.ajax({ 
        type: 'POST', 
        contentType: 'application/json', 
        url: 'add.do', 
        data: jsonuserinfo, 
        dataType: 'json', 
        success: function(data){ 
          alert("新增成功!"); 
        }, 
        error: function(){ 
          alert("error") 
        } 
      }); 
    }); 
  }); 

Tetapi nampaknya menggunakan Spring adalah perkara yang menyusahkan Berbanding dengan pelaksanaan RESTful Jersey, memang banyak perkara yang tidak ringkas.

Di atas adalah maklumat yang berkaitan tentang Spring mvc menerima data json yang dikongsi dalam artikel ini.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn