1.获取Session

方式一:  HttpSession session = request.getSession()

如果session还没有创建,则创建。

如果已经创建,则使用已经创建的session。

方式二:  HttpSession session = request.getSession(false);

如果session已经创建过,则使用已经创建的session。

如果session没有创建过,则返回null。

 Session的getId() 方法可以获得Session的id

 2.Session常用方法

     session.setAttribute("",Object);

session.getAttribute("");

session.removeAttribute("");

编写Servlet,使用Session实现使用:如果是第一次访问则输出第一次访问
    如果不是,则输出欢迎回来。

package com.henu.servlet;import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/*** @author George* @description* 编写Servlet,使用Session实现使用:如果是第一次访问则输出第一次访问如果不是,则输出欢迎回来。*/
public class SessionServletDemo01 extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request, response);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {HttpSession session = request.getSession(false);String str = "";if (session == null) {str = "第一次访问";//创建session。session = request.getSession();}else {str = "欢迎回来";}response.setContentType("text/html;charset=utf-8");PrintWriter pWriter = response.getWriter();pWriter.write(str);}}

登录案例:对于https://blog.csdn.net/qq_41946557/article/details/100107715

将其String reString = (String) this.getServletContext().getAttribute("reString");//从图片中取出验证码

改为HttpSession session = request.getSession();
        String reString = (String) session.getAttribute("checkcode");

当然在CheckCodeServlet类中先设置session

HttpSession session = request.getSession();
        session.setAttribute("checkcode",reString);

浅析session及小案例相关推荐

  1. 一篇有关javaWeb的,有关转发,重定向,session,request域的综合小案例:验证码

    **发一篇有关javaWeb的,有关转发,重定向,session,request域的综合小案例:验证码. 需求是: 1. 访问有验证码的登陆页面login.jsp 2. 用户输入用户名,密码以及验证码 ...

  2. Mybatis案例升级版——小案例大道理

    纯Mybatis案例升级版--小案例大道理 前言: 这几天看了一本书<原则>,在上面看到了一句话叫"每个人都把自己眼界的局限当成世界的局限",大学生是?,大学就是鱼缸, ...

  3. HIbernate关联映射小案例(CRUD)

    做了一个hibernate关联映射的小案例(CRUD),包含一对多.多对多的映射关系. 先看概念数据模型 Student表因可能出现重名所以采用联合主键. School实体类 package org. ...

  4. SSM实现登录注册的小案例(手把手喂饭)

    SSM实现登录注册的小案例 温馨提示 为了您有更好的阅读体验,原文链接如下,长理小生:https://lixingweiblog.github.io/Pages SpringMVC+Spring+My ...

  5. 爬虫之基本原理及简单使用、请求库之requests库及小案例

    文章目录 1.基本原理及简单使用 1.1.定义 1.2.爬虫的基本流程 1.3.请求与响应 1.4.Request 1.5.Response 1.6.总结 2.请求库之requests库 2.1.基本 ...

  6. JavaWeb:shiro入门小案例

    学习原因:刚接触Javaweb的时候懂的很少(当然现在也不多),所以开发一个小项目都是自己从头写到尾,从登录界面一直到数据库,当时想以后开发要是都这么写那不是很枯燥?!-知道后来团队开发,接触的开发人 ...

  7. Python:通过一个小案例深入理解IO多路复用

    通过一个小案例深入理解IO多路复用 假如我们现在有这样一个普通的需求,写一个简单的爬虫来爬取校花网的主页 import requests import timestart = time.time()u ...

  8. iptables小案例,nat表应用

    2019独角兽企业重金招聘Python工程师标准>>> iptables小案例: 需求1: 只针对filter表,预设INPUT链DROP,其他两个链ACCEPT,然后针对192.1 ...

  9. 4.10/4.11/4.12 lvm讲解 4.13 磁盘故障小案例

    4.10/4.11/4.12 lvm讲解 操作流程: 磁盘分区-->创建物理卷-->划分为卷组-->划分成逻辑卷-->格式化.挂载-->扩容. 磁盘分区 注: 创建分区时 ...

最新文章

  1. 双代号网络图节点编号原则_一表多图(表格/横道图/网络图)让计划编制效率提高10倍...
  2. tensorflow 1.0 学习:参数初始化(initializer)
  3. 全自动化建立SSH信任
  4. 手势检测的回调方法中onfling与onscroll的区别
  5. python中dataframe合并列名日期到季度_python 处理dataframe中的时间字段方法
  6. LINQ to SQL学习的几个问题
  7. vector,list deque三种容器对比
  8. spring中context:property-placeholder/元素
  9. bex64 java 贴吧,Windows Web Server 2008 R2 x64上的BEX错误
  10. LNMP环境部署----之Mysql安装部署
  11. 标签中包含input时line-height属性失效的解决办法
  12. adobe flash player ActiveX IE降级安装旧版本的方法
  13. 大文件怎样实现快速上传?
  14. 解决 zsh:command not found
  15. [T00ls]DEDECMS 0DAY
  16. 金项奖入围展播 | 梦系来客,星耀有礼
  17. Android端控制LED屏
  18. MySQL + Oracle GoldenGate + OGG Application Adpater
  19. CCF系列题解--2013年12月第四题 有趣的数字
  20. Java 反射与内省

热门文章

  1. CodeForces - 1408F Two Different(构造+分治)
  2. CodeForces - 1200E Compress Words(字符串哈希)
  3. 2019ICPC(上海) - Counting Sequences I(dfs打表)
  4. python自动点击脚本_[Python] 【Python3】教你写页游自动化Python脚本 3.取色,大漠识别和后台点击...
  5. EOJ_1102_任务调度问题
  6. 深度解密之HDU3826(Square free number)
  7. 在 Mac 上为 Android 编译 WebRTC
  8. 计算机网络 | 网络基础 :网络协议,协议分层,数据封装与分用,地址管理,字节序
  9. Linux 多线程(一)线程概念:线程概念、线程与进程、线程间的独有与共享、多线程与多进程、线程控制
  10. linux中sz和rz的使用,在服务器和本地之间传输数据