1、session--每个浏览器都会给用户一个session
session与cookie的区别
- cookie:把用户的数据写给浏览器,浏览器保存(可以保存多个)
- session把用户的数据写到用户独占的session中,服务器端保存
----cookie是服务器创建的保存在客户端的浏览器中
2、 创建一个sesion
package com.liyu.cookie;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet(name = "sessionDemo01")
public class sessionDemo01 extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//解决乱码
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
//得到session
HttpSession session = request.getSession();
//往session中存东西
session.setAttribute("name","加农炮");
//获取session的Id
String id = session.getId();
//判断session是不是新建
if (session.isNew()){
response.getWriter().write("session为第一次创建:"+id);
}else{
response.getWriter().write("这是一个旧的session:"+id);
}
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//解决乱码
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
//得到session
HttpSession session = request.getSession();
//往session中取东西
person person =(person)session.getAttribute("name");
System.out.println(person.toString());
}