javaWeb初识 Session持久化
Session方法
invalidate() 就是从session对象池中删除session
isNew() boolean; true刚刚创建的Session;false 不是新建的Session
session本地持久化
只要正常途径关闭tomcat服务器 就会把session内容存储到本地 注意,如果你在session存放对象,那这个对象想存储在磁盘上必须实现接口 java.io.Serializable
import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpSession; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/hello") public class B extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); Test test = new Test(); test.setName("小明"); session.setAttribute("Test", test);//通过对象的方式存储 RequestDispatcher requestDispatcher = request.getRequestDispatcher("a"); requestDispatcher.forward(request, response); } } ---- package com.sun.tomcat; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.http.HttpSession; @WebServlet("/a") public class A extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); Test test = (Test) session.getAttribute("Test"); //将对象进行强制类型转化 System.out.println(test.getName());//用转换后的对象进行取值 } } ---- package com.sun.tomcat; import java.io.Serializable; public class Test implements Serializable {//实现序列化技术 private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "Test{" + "name='" + name + '\'' + '}'; } }
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
JDK1.8 nashorn 引擎使用
整理了近期在项目上做的一些技术研究,希望与大家共同探讨交流。 在清算项目的计算模块使用 jdk 1.8 自带的 js 引擎 nashorn 做运算。 使用过程对 nashorn 做了一些简单的测试。 使用 nashorn 编译 js 后 执行 invokeFunction 计算 ,一个简单的逻辑判断 加上一个简单的乘法运算 循环执行100w次总耗时约为600~700ms 使用 mozilla 的 rhino js引擎, 编译 js 后 执行 func.call 计算 ,总耗时约为 1400ms 左右。 nashorn 中 eval 方法编译 js 耗时很大, 实际应用时需要进行缓存处理。 除此之外, 使用 nashorn 过程一直调用不到内部的 js 方法。 这里记录下这次的使用方式 public class LiquidationUtil { private static Logger logger = LoggerFactory.getLogger(LiquidationUtil.class); public static final String _expression = "_...
- 下一篇
关于Python,99%的人不知道
前言: python在近几年得到飞速发展,诞生了许多代码库。但是小编发现有很多代码都未能使用到 Python 3 提供的新功能。本文作者介绍了相关功能的介绍,包括字符串格式化处理、文件路径处理、类型提示、内置 LRU 缓存等等,帮助大家更好地利用 Python 3 书写代码。 注:文中的代码示例基于 Python 3.7 编写,为方便使用,在每个功能后面都列出了该功能所需的最低 Python 版本。 对任何一种编程语言来说,字符串处理是一项很重要的内容,字符串处理往往是很多程序的基础部分。由于人工处理字符串非常繁琐,我们更希望用一种结构化的方法来处理它们。在 Python 中,我们一般使用 format 来进行结构化字符串处理,如下所示:user="JaneDoe" action = "buy"log_message='User{}hasloggedinanddidanaction{}.'.format( user, action )除了 format 之外, Python 3 还提供了一个更加灵活的方法来处理字符串,那就是 f-string 。如下所示,我们用 f-s...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- CentOS7设置SWAP分区,小内存服务器的救世主
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装