博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
@PathVariable、@RequestHeader与@CookieValue注解的使用案例
阅读量:6578 次
发布时间:2019-06-24

本文共 2081 字,大约阅读时间需要 6 分钟。

@PathVariable注解

可以非常方便地获取请求URL中的动态参数。只支持一个属性value[String类型]

@RequestHeader注解

可以用于将请求头的信息区数据映射到功能处理方法的参数上。属性有name(别名:value)、required[布尔类型]、defaultValue[String类型]。

@CookieValue注解

可以用于将请求的Cookie数据映射到功能处理方法的参数上。属性有name(别名:value)、required[布尔类型]、defaultValue[String类型]。

案例

项目配置我就不在这里再次描述了,可以翻我之前的文章。

新建一个DataBindingController,用于接受并输出获取的数据。

package com.wen.controller;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.*;@Controllerpublic class DataBindingController {    //静态的日志类LogFactory    private static final Log logger = LogFactory.getLog(DataBindingController.class);    //测试@PathVariable注解    //该方法映射的请求为http://localhost:8080/.../pathVariableTest/{userId}    @RequestMapping(value = "/pathVariableTest/{userId}")    public void pathVariableTest(@PathVariable Integer userId){        logger.info("通过@PathVariable获得数据:"+userId);    }    //测试@RequestHeader注解    //该方法映射的请求为http://localhost:8080/.../requestHeaderTest    @RequestMapping(value = "/requestHeaderTest")    public void requestHeaderTest(            @RequestHeader("User-Agent") String userAgent,            @RequestHeader(value="Accept") String[] accepts){        logger.info("通过@requestHeaderTest获得数据:"+userAgent);        for (String accept :accepts){            logger.info(accept);        }    }    //测试@CookieValue注解    //该方法映射的请求为http://localhost:8080/.../cookieValueTest    @RequestMapping(value = "/cookieValueTest")    public void cookieValueTest(            @CookieValue(value = "JSESSIONID",defaultValue = "") String sessionId){        logger.info("通过@cookieValueTest获得数据:"+sessionId);    }}

index.jsp用于访问Controller中的方法。

<%--  Created by IntelliJ IDEA.  User: wen  Date: 2019/1/28  Time: 21:28  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %>      $Title$      

数据绑定测试

测试PathVariable注解 测试RequestHeader注解 测试CookieValue注解

点击超链接测试,控制台就会出现以下数据。

控制台输出

转载于:https://www.cnblogs.com/guowenrui/p/10363580.html

你可能感兴趣的文章
黑马程序员__反射总结
查看>>
Scala学习笔记(5)-类和方法
查看>>
binary was not built with debug information
查看>>
解决Spring Boot集成Shiro,配置类使用Autowired无法注入Bean问题
查看>>
LoadRunner Controller无法创建Vuser。确保您的Load Generator可
查看>>
Quartz原理
查看>>
完全卸载oracle|oracle卸载|彻底卸载oracle
查看>>
垃圾收集基础
查看>>
Docker安装及基本命令
查看>>
控制namenode检查点发生的频率
查看>>
Linux存储挂载后,无法正常卸载的解决方法
查看>>
2、递归遍历文件夹下每一个文件
查看>>
Remove auto_increment from Schema Dumps (mysqld...
查看>>
解决activity加上Theme.Translucent.NoTitleBar 页面跳转显示桌面
查看>>
php类库
查看>>
浅谈Java中的对象和引用
查看>>
SQL 注入自我总结
查看>>
Linux线程
查看>>
帝国cms使用集锦
查看>>
maven dependencies dependencyManagement
查看>>