@Controller、@ResponseBody和@RestController
@Controller
注解用于控制层的类上,使该类的实例被Spring
的IOC
容器管理,一般配合视图解析器InternalResourceViewResolver
根据返回的逻辑视图名进行相应的页面跳转。@ResponseBody
注解用于控制层的类或者方法上,常用于Restful
编程,根据需要返回JSON
、XML
或自定义mediaType
内容。@RestController
注解相当于@Controller
与@ResponseBody
的结合。
@PathVariable和@RequestParam
@PathVariable
用于获取URL
中的数据,示例代码如下:
@GetMapping("/indexUI/{id}")
public String indexUI(@PathVariable(value = "id") String id){
return id;
}
打开浏览器,在地址栏输入相应的地址后,结果如下:
@RequestParam
用于获取请求参数的值,示例代码如下:
@GetMapping("/indexUI")
public String indexUI(@RequestParam(value = "ID",required = false) String id){
return id;
}
value = "ID"
中的ID
为前端传过来的参数名,required=true
(默认)时,则该参数必须有值,否则报错,若前端未传值,可通过defaultValue
设置默认值。