springboot中前端ajax传值与后台的接收
后台接收前端发来的数据,有几个注解可以用到。这里不讲其中缘由,直接上实例。只需注意传值方式,其他的根据自己的情况自定。
第一种方式,不使用任何注解。
前端
var data = "username="+vm.username+"&password="+vm.password+"&captcha="+vm.captcha;
$.ajax({
type: "POST",
url: "sys/login",
data: data,
dataType: "json",
后台接收
public R login( String username, String password, String captcha)
2.使用注解@PathVariable
前端
$.get(baseURL + "noticeinfo/info/"+noticeid
后台
public R info(@PathVariable("noticeid") Integer noticeid)
3.使用注解@RequestParam
前端
url : baseURL + "noticeinfo/saveimg?noticeid=" + param
后台
public R info(@RequestParam(noticeId) String noticeId)
4. 使用注解@RequestBody
前端
$(document).ready(function(){
$('#suppliersCodeInput').blur(function() {
var suppliersCodeInput = $(this).val();
if(suppliersCodeInput == ""){
$('#span01').text("");
return false;
}
$.ajax({
type : "POST",
url : "torihikiS",
data : {"suppliersCodeInput" : suppliersCodeInput},
dataType:"json",
success : function(result) {
var introStatus = result.introStatus;
if(introStatus == null){
$('#span01').text("");
}else if(introStatus == '01'){
$('#span01').text("(承認待ち)");
}else if(introStatus == '02'){
$('#span01').text("(承認済)");
}else if(introStatus == '03'){
$('#span01').text("(差戻)");
}else if(introStatus == '04'){
$('#span01').text("(再申請)");
}
},
error : function(result) {
alert("err");
}
})
});
});
后台 ,有两种方式.
/** * Ajax. * * @return 導入申込画面 */ @RequestMapping(value="/torihikiS") @BizErrorPage(page = DounyuuShinseiPage.class) @ResponseBody //将java对象转为json格式的数据。 public DounyuuShinseiSearchDataBizContext torihikiS(String suppliersCodeInput) { DounyuuShinseiSearchDataBizContext BizContext = new DounyuuShinseiSearchDataBizContext(); BizContext = dounyuuShinseiProcess.torihikiSearch(suppliersCodeInput); return BizContext; }
public R update(@RequestBody NoticeInfoEntity noticeInfo)
可以直接使用一个map来接收。
public R update(@RequestBody Map<String, Object> params)