【Java】SpringMVC参数接收(三):cookie、session、header

1、接收cookie

(1)接收所有cookie

java 复制代码
@RequestMapping("/request")
@RestController
public class RequestController {
    @RequestMapping("/c1")
    public String c1(HttpServletRequest request){
        Cookie[] cookies = request.getCookies();
        if(cookies != null){
            for (Cookie cookie : cookies){
                System.out.println(cookie.getName() + ":" + cookie.getValue());
            }
            return "获取cookie成功!";
        }
        return "cookies为空";
    }
}

(2)接收单个cookie

java 复制代码
@RequestMapping("/request")
@RestController
public class RequestController {
    @RequestMapping("/c2")
    public String c2(@CookieValue("java") String java){
        return "java:" + java;
    }
}

2、接收session

首先设置session

java 复制代码
@RequestMapping("/request")
@RestController
public class RequestController {
    @RequestMapping("/s1")
    public String s1(HttpServletRequest request){
        HttpSession session = request.getSession();
        session.setAttribute("name","zhangsan");
        return "设置会话成功!";
    }
}

接收session方法一

java 复制代码
@RequestMapping("/request")
@RestController
public class RequestController {
    @RequestMapping("/s2")
    public String s2(HttpServletRequest request){
        HttpSession session = request.getSession();
        String username = (String)session.getAttribute("name");
        return "登录用户" + username;
    }
}

接收session方法二

java 复制代码
@RequestMapping("/request")
@RestController
public class RequestController {
    @RequestMapping("/s3")
    public String s3(@SessionAttribute(value = "username",required = false)String username){
        return "登录用户" + username;
    }
}
}

3、接收header

接收方法一

java 复制代码
@RequestMapping("/request")
@RestController
public class RequestController {
    @RequestMapping("/h1")
    public String getHeader1(HttpServletRequest request){
        String userAgent = request.getHeader("User-Agent");
        return "userAgent: " + userAgent;
    }
}

接受方法二

java 复制代码
@RequestMapping("/request")
@RestController
public class RequestController {
    @RequestMapping("h2")
    public String getHeader2(@RequestHeader("User-Agent") String userAgent){
        return "userAgent: " + userAgent;
    }
}
相关推荐
LCG元33 分钟前
Vue.js组件开发-如何实现异步组件
前端·javascript·vue.js
Lorcian35 分钟前
web前端12--表单和表格
前端·css·笔记·html5·visual studio code
问道飞鱼40 分钟前
【前端知识】常用CSS样式举例
前端·css
山茶花开时。43 分钟前
[SAP ABAP] 静态断点的使用
开发语言·sap·abap
纠结哥_Shrek43 分钟前
Java 有很多常用的库
java·开发语言
wl85111 小时前
vue入门到实战 三
前端·javascript·vue.js
ljz20161 小时前
本地搭建deepseek-r1
前端·javascript·vue.js
爱是小小的癌1 小时前
Java-数据结构-优先级队列(堆)
java·前端·数据结构
天乐敲代码1 小时前
JAVASE入门十五脚-网络TCP,UDP,,Lambda
java
傻小胖2 小时前
vue3中Teleport的用法以及使用场景
前端·javascript·vue.js