目录
二、session的使用
一、cookie的使用
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter out=resp.getWriter();
//cookie,服务器端从客户端获取
cookie[] cookies=req.getcookies();//这里返回数组,说明cookie可能存在多个
//判断cookie是否存在
if(cookies!=null){
//如果存在怎么办
out.write("你上次访问的时间是:");
for (int i=0;i
中文的编码与解码:
二、session的使用
添加Session:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//解决乱码问题
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
//得到Session
HttpSession session=req.getSession();
//给Session中存东西
session.setAttribute("name",new Person("大表哥",1));
//获取Session的ID
String sessionId=session.getId();
//判断Session是不是新创建
if(session.isNew()){
resp.getWriter().write("session创建成功");
}else{
resp.getWriter().write("session已经存在服务器中,ID:"+sessionId);
}
//Session创建的时候做了什么事情
// cookie cookie=new cookie("JSESSIONID",sessionId);
// resp.addcookie(cookie);
}
获取Session:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//解决乱码问题
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
//得到Session
HttpSession session=req.getSession();
Person person=(Person) session.getAttribute("name");
System.out.println(person.toString());
}
注销Session:
手动注销:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//注销Session
HttpSession session=req.getSession();
session.removeAttribute("name");
//手动注销Session
session.invalidate();
}
自动注销,在web.xml里配置:
15
三、Session和cookie的区别
中文的编码与解码:
二、session的使用
添加Session:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//解决乱码问题
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
//得到Session
HttpSession session=req.getSession();
//给Session中存东西
session.setAttribute("name",new Person("大表哥",1));
//获取Session的ID
String sessionId=session.getId();
//判断Session是不是新创建
if(session.isNew()){
resp.getWriter().write("session创建成功");
}else{
resp.getWriter().write("session已经存在服务器中,ID:"+sessionId);
}
//Session创建的时候做了什么事情
// cookie cookie=new cookie("JSESSIONID",sessionId);
// resp.addcookie(cookie);
}
获取Session:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//解决乱码问题
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
//得到Session
HttpSession session=req.getSession();
Person person=(Person) session.getAttribute("name");
System.out.println(person.toString());
}
注销Session:
手动注销:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//注销Session
HttpSession session=req.getSession();
session.removeAttribute("name");
//手动注销Session
session.invalidate();
}
自动注销,在web.xml里配置:
15



