1、控制器类的注解
(1) @Controller 作用:修饰类,一个类被它修饰,就成了控制器类,负责接收和处理 HTTP 请求,可以返回页面和数据; (2) @RestController (@Controller+@ResponseBody 的组合注解) 作用:修饰类,一个类被它修饰,就成了控制器类,只返回给用户数据,默认将返回的对象数据转换为 json 格式。 2、路由映射的注解 (1) @RequestMapping 作用:负责 URL 的路由映射,建立请求 URL 和处理请求方法之间的对应关系,可以修饰类或类中的方法。 ⚫ 常用属性参数,定义 HTTP 的请求映射规则 ◼ Value:请求的 URL 路径,可以使用通配符 ◼ Method:HTTP 请求方法,如 GET,POST ⚫ 该注解加在类上时: ◼ 请求 URL 的第一级访问目录; ◼ 可以按照模块化管理 URL 地址: 例如: 账户模块: /account/add /account/update /account/delete ... 订单模块: /order/add /order/update /order/delete ⚫ 该注解加在方法上时,映射每个方法的路由: ◼ 请求 URL 的第二级访问目录 ◼ value:用于指定请求的 URL ◼ method:用于指定请求的方式 (2)@GetMapping 等 RestFul 风格的注解 @GetMapping,@PostMapping 等,来代替 @RequestMapping 注解。 3、页面向控制器传递参数的注解 (1) @RequestParam 作用:将请求参数绑定到控制器的方法参数上,接收的参数来自http请求体或请求的url的QueryString; 当请求的参数名称与Controller的业务方法参数名称一致时,该注解可以省略,当两边参数名不一致时,需要使用该注解可以实现参数间的映射。 (2)@RequestBody 该注解主要用来接收前端传递给后端的 json 字符串中的数据(请求体中的数据的)。一般用来处理“application/json””application/xml”等类型的数据,使用@RequestBody 接收数据时,一般都用 POST 方式进行提交。 应用1:用于获取请求体内容。直接使用得到是 key=value&key=value...键值对结构的数据。 应用2:前端页面使用ajax技术,将数据封装成json格式进行传递,控制器方法中使用该注解,将json数据转成实体类来接收。 注:Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。 (3)@PathVaraible 作用:处理动态URL,URL的值可以作为控制器中处理方法的参数,主要用于RestFul风格中。 标签:常用,请求,SpringMVC,控制器,URL,json,参数,注解 From: https://www.cnblogs.com/qiqi-yi/p/17277530.html