Cookie的创建
cookie中只能存放字符串,不能存放java对象,要想存放java对象得将对象转化为json字符串
Cookie cookie = new Cookie("user", "123456789");
// 设置cookie在全项目可用
cookie.setPath("/");
// 设置cookie存在时间
cookie.setMaxAge(7*24*60*60);
// 发送cookie大客户端
response.addCookie(cookie)
Cookie销毁(过期)
cookie是无法设置销毁的,只能设置他的时间过期
//获取cookie
Cookie[] cookies=request.getCookies();
for(Cookie cookie: cookies){
cookie.setMaxAge(0);
cookie.setPath("/"); //路径一定要写上,不然销毁不了
response.addCookie(cookie);
}
Session创建
HttpSession session = request.getSession();
session.setAttribute("user",user)
Session销毁
HttpSession session = req.getSession();
session.invalidate();
对象转字符串
使用jackson包实现
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.0</version>
</dependency>
代码:
ObjectMapper mappe = new ObjectMapper();
// 将user转为json字符串
String jsonuser = mappe.writeValueAsString(user)