栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Session(重点)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Session(重点)

什么是Session

服务器会给每一个用户(浏览器)创建一个Session对象;一个Session独占一个浏览器,只要浏览器没有关闭,这个Session就存在;用户登陆之后,整个网站它都可以访问-------->保存用户的信息;保存购物车的信息

Session和cookie的区别

cookie是把用户的数据写给用户的浏览器,浏览器保存(可以保存多个)Session把用户的数据写到用户独占Session中,服务器端保存(保存重要的信息,减少服务器资源的浪费)Session对象由服务器创建;cookie: Session:

使用场景

保存一个登陆用户的信息;购物车信息;在整个项目中经常会使用的数据,我们将它保存在Session中; 使用Session

SessionDemo01.java

package com.godairo.servlet;

import pojo.Person;

import javax.servlet.ServletException;
import javax.servlet.http.*;
import java.io.IOException;

public class SessionDemo01 extends HttpServlet {

		@Override
		protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
				//解决乱码
				request.setCharacterEncoding("UTF-8");
				request.setCharacterEncoding("UTF-8");
				response.setContentType("text/html;charset=utf-8");
				//得到Session
				HttpSession session = request.getSession();
				
				//给Session中存东西
				session.setAttribute("name",new Person("小可爱",23));
				
				//获取Session的ID
				String sessionid = session.getId();
				
				//判断Session是不是新创建的
				if (session.isNew()){
						response.getWriter().write("session创建成功,ID为:"+sessionid);
				}else {
						response.getWriter().write("session已经在服务器中存在,ID为:"+sessionid);
				}
				
				//Session创建的时候做了什么事情?
//				cookie cookie = new cookie("JSESSIONID",sessionid);
//				response.addcookie(cookie);

		}

		@Override
		protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
				super.doGet(req, resp);
		}
}

SessionDemo02.java

package com.godairo.servlet;

import pojo.Person;

import javax.servlet.ServletException;
import javax.servlet.http.*;
import java.io.IOException;

public class SessionDemo02 extends HttpServlet {

		@Override
		protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
				//解决乱码
				request.setCharacterEncoding("UTF-8");
				request.setCharacterEncoding("UTF-8");
				response.setContentType("text/html;charset=utf-8");
				//得到Session
				HttpSession session = request.getSession();

				Person person = (Person) session.getAttribute("name");

				System.out.println(person.toString());
				response.getWriter().write(person.toString());

		}

		@Override
		protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
				super.doGet(req, resp);
		}
}

SessionDemo03.java

package com.godairo.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;

public class SessionDemo03 extends HttpServlet {

		@Override
		protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
				HttpSession session = request.getSession();
				session.removeAttribute("name");
				//手动注销Session
				session.invalidate();
				
		}

		@Override
		protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
				doGet(req, resp);
		}
}

web.xml



        
        
                cookieDemo01
                com.godairo.servlet.cookieDemo01
        
        
        
                cookieDemo01
                /c1
        


        
                cookieDemo02
                com.godairo.servlet.cookieDemo02
        

        
                cookieDemo02
                /c2
        

        
                cookieDemo03
                com.godairo.servlet.cookieDemo03
        

        
                cookieDemo03
                /c3
        

        
                SessionDemo01
                com.godairo.servlet.SessionDemo01
        

        
                SessionDemo01
                /s1
        

        
        SessionDemo02
        com.godairo.servlet.SessionDemo02


        
                SessionDemo02
                /s2
        

        
                SessionDemo03
                com.godairo.servlet.SessionDemo03
        

        
                SessionDemo03
                /s3
        
        
        
        
                
                1
        

 会话自动过期:web.xml配置

        
        1

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/723881.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号