@PathVariable,@RequestHeader,@CookieValue注解

1.@PathVariable可以非常方便获得URL的动态参数。它只支持一个属性value,类型为String,表示绑定的名称

@RequestMapping(value="/test/{userId}")
    public String test(@PathVariable Integer userId)
    {
        System.out.println("=========="+userId);
        return "register";
    }

http://localhost:8080/LoginTest/user/test/456

2.@RequestHeader 用于将请求的头信息数据映射到功能处理方法的参数上

3.@CookieValue 用于将请求的Cookie数据映射到功能处理方法的参数上

 

测试代码

package com.game.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class BindingController {
    
    @RequestMapping("/test")
    public String test()
    {
        return "test";
    }

    @RequestMapping("/pathVariableTest/{userId}")
    public void pathVariableTest(@PathVariable Integer userId)
    {
        System.out.println("pathVariableTest=====" + userId);
    }
    
    
    @RequestMapping("/requestHeaderTest")
    public void requestHeaderTest( 
            @RequestHeader("User-Agent") String userAgent,
            @RequestHeader(value="Accept") String[] accepts)
    {
        for(String accept : accepts)
        {
            System.out.println("requestHeaderTest=====" + accept);
        }
    }
    
    @RequestMapping("/cookieValueTest")
    public void cookieValueTest(@CookieValue(value="JSESSIONID",defaultValue="") String sessionId)
    {
        System.out.println("cookieValueTest=======" + sessionId);
    }
}
 <body>
    <h3>数据绑定测试</h3>
    <a href="pathVariableTest/123">测试PathVariable</a><br>
    <a href="requestHeaderTest">测试RequestHeader</a><br>
    <a href="cookieValueTest">测试Cookievalue</a><br>
  </body>

posted @ 2017-06-13 00:22  腾飞新星  阅读(289)  评论(0编辑  收藏  举报