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.