SpringMvc常用注解
Posted 小崔编程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringMvc常用注解相关的知识,希望对你有一定的参考价值。
1、@Controller
用于标记一个类,即一个SpringMVC Controller对象,一个控制器类。Spring使用扫描机制查找应用程序中所有基于注解的控制器类。为了保证Spring能找到控制器,需要两件事:
在SpringMVC的配置文件的头文件中引入spring-context.
使用<context:component-scan/>元素,该元素的功能为:启动包扫描功能。
例:<context:component-scan base-package=“com.java.test”/> base-package属性指定了需要扫描的类包,类包及其递归子包中所有的类都会被处理。
2、 @RequestMapping
可以用来注释一个控制器类,在这种情况下,所有的方法都将映射为相对于级别的请求,表示该控制器处理的所有请求都被映射到value属性所指示的路径下。也可以注释方法。属性:
value: 指定请求的实际地址,指定的地址可以是URITemplate 模式(后面将会说明);
method: 指定请求的method类型, GET、POST、PUT、DELETE等;
consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json,text/html;
produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;
params: 指定request中必须包含某些参数值是,才让该方法处理。
headers: 指定request中必须包含某些指定的header值,才能让该方法处理请求。
3、request body
@RequestParam 用于将指定的请求参数赋值给方法中的形参
@RequestBody
a、将内容或对象作为 HTTP 响应正文返回,并调用适合HttpMessageConverter的Adapter转换对象,写入输出流。
b、该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上; 再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上。
4、request uri
@PathVariable
当使用@RequestMapping URI template 样式映射时, 即 someUrl/paramId, 这时的paramId可通过 @Pathvariable注解绑定它传过来的值到方法的参数上。
@RequestMapping("/pets/petId")
public void findPet(@PathVariable String ownerId, @PathVariable StringpetId, Model model)
// implementation omitted
5、request header
@RequestHeader 用于将请求头信息区数据映射到功能方法的参数上
public String getHello(@RequestHeader ("host") String hostName,
@RequestHeader ("Accept") String acceptType,
@RequestHeader ("Accept-Language") String acceptLang,
@RequestHeader ("Accept-Encoding") String acceptEnc,
@RequestHeader ("Cache-Control") String cacheCon,
@RequestHeader ("Cookie") String cookie,
@RequestHeader ("User-Agent") String userAgent)
@CookieValue 用于将请求的Cookie数据映射到功能处理方法的参数上
6、attribute
@SessionAttributes允许我们有选择的指定Model中的那些属性需要转存到HttpSession对象中
@ModelAttribute 将请求参数绑定到Model对象中。
基础知识就是想写一写。
以上是关于SpringMvc常用注解的主要内容,如果未能解决你的问题,请参考以下文章