前台採用anglar js傳參,後台採用springMVC進行接參時,控制器返回值為布爾類型時,無法接收到傳來的多個參數,這裡我以傳遞多個基本數據類型為例進行講解。
1 SpringMVC框架下,如果用ajax向后台请求得方法如果使用@Responsebody返回布尔值的话,ajax得不到任何的回传数据。
但是如果返回String类型,就是正常的。
//控制器中的方法
@RequestMapping(value = "/{aa}/{bb}",method=RequestMethod.GET)
@ResponseBody
public String isExistsData(@PathVariable String aa,@PathVariable String bb) {
return service.isExistsData(materialCode,storageTypeCode).toString();
}
2 前台代碼
app.factory('ServiceName', ['$resource', function($resource) {
return $resource('/test/:aa/:bb'
);
}]);
//js調用
ServiceName.get({aa: value_aa,bb:value_bb}, function(data) {
var flag=data;
if(flag[0].toUpperCase()=="T")
{
isExists=true;
}
});
注:1 前台傳遞參數是切勿忘記在參數屬性名前加冒號“:” 2 回調函數返回的數據並不是一個字符串,而是一個字符串數組,因此取一個字符進行判斷即可