Spring @RequestHeader用法

Spring MVC提供了 @RequestHeader注解,能够将请求头中的变量值映射到控制器的参数中。下面是一个简单的例子:

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
//.. @Controller
public class HelloController { @RequestMapping(value = "/hello.htm")
public String hello(@RequestHeader(value="User-Agent") String userAgent) //..
}
}

在上面的代码片段中,定义了一个映射到/hello.htm的hello控制器方法。同时用 @RequestHeader注解将请求头中”User-Agent“的变量与”userAgent“变量绑定。当此某个请求映射到了此控制器方法,Spring会检查请求头中的”User-Agent“变量,并将其与”userAgent“变量绑定。

如果 @RequestHeader绑定的变量,在请求头中不存在,Spring会将控制器中的参数初始化为null。如果想给控制器参数提供一个默认值,在 @RequestHeader的defaultParameter属性。

@RequestMapping(value = "/hello.htm")
public String hello(@RequestHeader(value="User-Agent", defaultValue="foo") String userAgent) //..
}
上一篇:js-处理div设置的编辑框处理焦点定位追加内容


下一篇:解决idea中maven默认jdk为1.5的问题 : IntelliJ IDEA 源值1.5已过时,将在未来所有版本中删除