springMVC之@RequestMapper、@PathVariable、@RequestParam、@RequestHeader、@CookieValue标签的用法

@RequestMapper标签

Value:指定映射信息

Method:指定来指定请求方式method=RequestMethod.GET为get请求,

method=RequestMethod.POST为post请求

params: 可以使用params和headers来更加精确的映射请求,params和headers支持简单的表达式, 比如params={"username","age!=10"}表示请求连接中必须包含username参数,且age参数不能等于10,如

http://localhost:8080/springMVC_1/springmvc/paramsAndHeadersTest?username=zs&age=11

headers: 可以使用params和headers来更加精确的映射请求,params和headers支持简单的表达式,比如headers={"Accept-Language=zh-CN,zh;q=0.8"},表示网页的请求头中Accept-Language属性的值必须为zh-CN,zh;q=0.8

 

代码示例

@RequestMapping("/springmvc")

@Controller

public class SpringMVCTest {

    public static String SUCCESS = "success";

    /**

     * 1@RequestMapping除了修饰方法,还可以修饰类

     * 2、类定义处:提供初步的请求映射信息,性对于web应用的根目录

     *   方法处:提供进一步的细分映射信息

     * 相对于类定义处的URL,若类定义处未标注@RequestMapping,这则方法出标记的URL相对于

     * web应用的根目录

     * @return

     */

    @RequestMapping("/requestMappingTest")

    public String requestMappingTest(){

       System.out.println("requestMappingTest");

       return SUCCESS;

    }

}

Jsp代码

<body>

    <a href="springmvc/requestMappingTest">requestMappingTest</a>

</body

@PathVariable标签

可以来映射URL中的占位符到目标方法中的参数中

 

代码示例

@RequestMapping("/springmvc")

@Controller

public class SpringMVCTest {

    public static String SUCCESS = "success";

    /**

     * @PathVariable 可以来映射URL中的占位符到目标方法中的参数中

     * @param id

     * @return

     */

    @RequestMapping("/pathVariableTest/{id}")

    public String pathVariableTest(@PathVariable("id") Integer id){

       System.out.println("pathVariableTest"+id);

       return SUCCESS;

    }  

}

Jsp代码

<a href="springmvc/pathVariableTest/1">pathVariableTest</a>

运行结果:

 

@RequestParam

@RequestParam 用来映射请求参数

value:value的值为请求参数的参数名

required:该参数是否必须,默认为true

defaultValue:该请求参数的默认值

 

代码示例

@RequestMapping("/springmvc")

@Controller

public class SpringMVCTest {

    public static String SUCCESS = "success";

    /**

     * @RequestParam 用来映射请求参数

     * valuevalue的值为请求参数的参数名

     * required:该参数是否必须,默认为true

     * defaultValue:该请求参数的默认值

     * @param username

     * @param age

     * @return

     */

    @RequestMapping("/requestParamTest")

    public String requestParamTest(@RequestParam(value="username")

       String username,@RequestParam(value="age",required=false) Integer age){

       System.out.println("requestParamTest,username:"+username+

              ",age:"+age);

       return SUCCESS;

    }

}

Jsp代码

<a href="springmvc/requestParamTest?username=zs&age=20">requestParamTest</a>

 

@RequestHeader

@RequestHeader 用法同 @RequestParam

 用来映射请求头信息

代码示例

@RequestMapping("/springmvc")

@Controller

public class SpringMVCTest {

    public static String SUCCESS = "success";

    /**

     * @RequestHeader 用法同 @RequestParam

     * 用来映射请求头信息

     * @param al

     * @return

     */

    @RequestMapping("/requestHeaderTest")

    public String requestHeaderTest(@RequestHeader(value="Accept-Language")

           String al){

       System.out.println("requestHeader,al:"+al);

       return SUCCESS;

    }

}

 

Jsp代码

<a href="springmvc/requestHeaderTest">requestHeaderTest</a>

 

@CookieValue

@CookieValue 映射一个cookie值用法同 @RequestParam

 

代码示例

@RequestMapping("/springmvc")

@Controller

public class SpringMVCTest {

    public static String SUCCESS = "success";

    /**

     * @CookieValue 映射一个cookie值用法同 @RequestParam

     * @param jsessionId

     * @return

     */

    @RequestMapping("/cookieValueTest")

    public String cookieValueTest(@CookieValue(value="JSESSIONID")

       String jsessionId){

       System.out.println("cookieValueTest,jsessionId:"+jsessionId);

       return SUCCESS;

    }

}

Jsp代码

<a href="springmvc/cookieValueTest">cookieValueTest</a>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值