就两步
1发送cookie到客户端
2获取cookie
2.1因为获取到的cookie会有别的cookie,所有可以遍历一下,然后得到自己需要的那个
package com.example.a8080.cookie;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@RestController
public class k {
@RequestMapping("/k1")
void k1(HttpServletResponse response) {
//发送cooike
//1创建cookie对象
Cookie cookie = new Cookie("ywx", "123");
//2,发送cookie,response
response.addCookie(cookie);
}
@RequestMapping("/k2")
void k2(HttpServletRequest request) {
//获取cookie
//1.获取cookie数租,因为会有很多cookie,都要获取过来,然后挑选出自己发送的cookie
Cookie[] cookies = request.getCookies();
// 2遍历数组,输出所有的cookie
for (Cookie cookie : cookies) {
String name = cookie.getName();
String value = cookie.getValue();
System.out.println(name + ":" + value);
}
System.out.println("-------------------");
// 2遍历数组,获取自己需要的cookie
for (Cookie cookie : cookies) {
//3获取数据
String name = cookie.getName();
if ("ywx".equals(name)) {
String value = cookie.getValue();
System.out.println(name + ":" + value);
System.out.println("结束");
break;
}
}
}
// 结合在一起
@RequestMapping("/k4")
void k4(HttpServletResponse response, HttpServletRequest request) {
//1发送
Cookie cookie = new Cookie("sb", "111111");
response.addCookie(cookie);
//2获取
Cookie[] cookies = request.getCookies();
for (Cookie cookie1 : cookies) {
//3获取数据,如果cookie的name和自己设置的一样,就输出他的value
String name = cookie1.getName();
if ("sb".equals(name)) {
String value = cookie1.getValue();
System.out.println(name + ":" + value);
}
}
}
}