【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;
    }
}
相关推荐
霍霍的袁几秒前
【C++初阶】缺省参数(默认参数)详细讲解
开发语言·c++·算法
risc1234563 分钟前
DocumentsWriterDeleteQueue 的核心设计思想
java·全文检索·lucene
I Promise349 分钟前
多传感器融合&模型后处理C++工程师面试参考回答
开发语言·c++·面试
风味蘑菇干17 分钟前
Stream基础题目
java·算法
2501_9327502621 分钟前
Java反射机制基础入门
java·开发语言
a11177628 分钟前
动森UI组件(开源 html animal-island-ui )
前端·javascript·ui·开源·html
5008429 分钟前
HCCL 集合通信编程:多卡协同的正确姿势
java·flutter·性能优化·electron·wpf
KaMeidebaby29 分钟前
卡梅德生物技术快报|真核蛋白表达信号肽筛选实验全流程复盘
服务器·前端·数据库·人工智能·算法
霍霍的袁37 分钟前
【C++初阶】函数重载详细讲解
开发语言·c++·算法
threelab37 分钟前
Three.js 黑洞引力效果着色器 | 三维可视化 / AI 提示词
开发语言·javascript·着色器