SpringBoot——@RequestParam
当参数是以问号拼接的形式传参时使用该注解,比如URL的最后一部分形如:?xx=yy&zz=ww。地址栏请求
//api地址:http://localhost:9089/inspection/queryByFactory?factory=111
@RequestMapping(value="/queryByFactory")
public Map<String, Object> getUserBlog(@RequestParam(value="factory") String factoryName) {
return InspectionStandard.queryByFactory(factory);
}
//api地址:http://localhost:9089/sampling/queryByFactory?factory=222
@GetMapping(value="/queryByFactory")
public Map<String, Object> getUserBlog(@RequestParam(value="factory") String factoryName) {
return SamplingPlan.queryByFactory(factory);
}
SpringBoot——@PathVariable
URL参数不以问号拼接参数,通过URL的分隔符/来分割参数,参数是根据名字自动赋值对应的函数参数值。当HTTP请求为/queryByFactory/factory,factory就会被赋值给函数参数factoryName,当下场景就可以使用该注解。前端表单提交请求后台服务器
//api地址:http://localhost:9089/inspection/queryByFactory/factory
@RequestMapping(value = "/queryByFactory/{factoryName}")
public Map<String, Object> getUserBlog(@PathVariable(value="factoryName") String factoryName) {
return InspectionStandard.queryByFactory(factoryName);
}
//api地址:http://localhost:9089/sampling/queryByFactory/factory
@GetMapping(value = "/queryByFactory/{factoryName}")
public Map<String, Object> getUserBlog(@PathVariable(value="factoryName") String factoryName) {
return SamplingPlan.queryByFactory(factoryName);
}
SpringBoot——@RequestBody
用来处理请求头Content-Type: 为 application/json编码的内容,明确的告诉服务器发送的内容是json。因为需要读取body中内容,所以只能接受post请求。前端Ajax发送JSON请求
@PostMapping("/Experiment")
public Map<String, Object> Experiment(@RequestBody List<Map<String, Object>> paramsByList) throws Exception {
return InspectRejectService.Experiment(paramsByList);
}