JavaWeb基础 session 只有在第一次获取的时候才会创建

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb基础 session 只有在第一次获取的时候才会创建相关的知识,希望对你有一定的参考价值。

礼悟:
     好好学习合思考,尊师重道存感恩。叶见寻根三返一,江河湖海同一体。
          虚怀若谷良心主,愿行无悔给最苦。读书锻炼强身心,诚劝且行且珍惜。




       javaEE:7           
       javaSE:1.8
          JSTL:1.2.2  
      server:tomcat 8.5
    browser:Chrome/Firefox
             os:windows7 x64
            ide:MyEclipse 2017

 

注:

  这篇博文内容的正确如否,给最苦 不敢保证。因为做记录的时候疏忽了,忘记添加一些关键的说明。然后是,可以保证的是 session 只有在第一次获取的时候才会创建。

 

 

HaveSessionIdServlet.java

package com.jizuiku.servlet;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * 
 * 
 * @author 博客园-给最苦
 * @version V2017.11.21
 */
public class HaveSessionIdServlet extends HttpServlet {

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		// 服务器不会马上创建session.而是 在第一次获取session时,才会创建session。理论通的重要性!
		// req.getSession();获取session
		req.getSession();
		// 处理中文
		response.setContentType("text/html;charset=utf-8");
		response.getWriter().print("有JSESSIONID");

	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub

	}

}

 


NoSessionIdServlet.java

package com.jizuiku.servlet;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * 
 * 
 * @author 博客园-给最苦
 * @version V2017.11.21
 */
public class NoSessionIdServlet extends HttpServlet {

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		// 处理中文
		response.setContentType("text/html;charset=utf-8");
		response.getWriter().print("没有JSESSIONID");

	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub

	}

}

 

浏览器进行查看

技术分享图片

 

 

关闭浏览器,再次打开浏览器进行查看

技术分享图片

 

 

 


学习资源:itcast和itheima视频库。如果您有公开的资源,可以分享给我的话,用您的资源学习也可以。
博文是观看视频后,融入思考写成的。博文好,是老师讲得好。博文坏,是 给最苦 没认真。















以上是关于JavaWeb基础 session 只有在第一次获取的时候才会创建的主要内容,如果未能解决你的问题,请参考以下文章

基于javaWeb阶段下的Cookie和Session总结

JavaWeb基础—会话管理之Session

JavaWeb基础 session isNew 判断session是新生成的 还是旧有的

JavaWeb-seession原理

javaweb五大个内置对象

Javaweb设置session过期时间