1、@RequestParam和@PathVariable的区别?
@RequestParam一般只能用于接收请求带的params;而@PathVariable只能用于接收url路径上的参数,如下面所示:
@PathVariable
前端请求:
export function safetyList(province){
return request({
url:’/main/index/safetyList/’+province,
method:’get’
})
}
后台接收:
@GetMapping(value=”/safetyList/{province}”)
Public AjaxResult safetyList(@PathVariable(“province”) String province){
List<Map<String,Object>> reskTypeList = riskService.riskList(province);
return reskTypeList;
}
@RequestParam
前台请求:
export function riskList(province, query) {
return request({
url: '/main/index/riskList/' + province,
method: 'get',
params: query
})
}
后台接收:
@GetMapping(value = "/riskList/{province}")
public TableDataInfo riskList(@PathVariable("province") String province,@RequestParam Map<String, Object> params) {
Set<String> unitCodes=getUnitCode(province);
List<Map<String,Object>> list=riskHazardBaseService.queryRiskList(unitCodes,params);
return getDataTable(list);
}