JSP内置session对象的调用方法
JSP就是Java,只是它是一个特别的Java语言,加入了一个特殊的引擎,这个引擎将HTTPServlet这个类的一些对象自动进行初始化好让用户使用,而用户不用再去操心前面的工作。下面小编准备了关于JSP内置session对象的调用方法,提供给大家参考!
application对象不同。application对象用于在多个程序之间保存信息,application对象只有一个,它可以绑定若干个相当于全局变量的参数或者Java对象,每个JSP程序所访问的都是application对象的一个同步副本,都是一样的,而且application对象的生命周期贯穿服务器的整个运行周期。但是,服务器上的session对象却可以有多个,不同的用户所面临的session对象一般来说是不同的,当用户登录网站,系统将为他生成一个独一无二的session对象,用以记录该用户的个人信息,一旦该用户退出网站,那么该session对象将会被注销。session对象也可以绑定若干个参数或者Java对象,这些参数或者Java对象就相当于局部变量,不同session对象间的同名变量是不会相互干扰的。应用session对象的功能,可以十分简单地实现购物车等功能。
但是我们仅能获取原session对象的一个同步副本,这一点上,session对象和application对象是一致的。application对象和session对象并非不能被创建,但是,他们只能够由JSP引擎自动创建。application对象在服务器启动的时候被创建,在服务器关闭时被删除,session对象在新的HTTP连接产生时被创建,在HTTP连接中断或者超时的.时候被删除,同时,JSP程序员也可以调用invalidate()方法强行删除session对象,中断HTTP连接。这是application对象和session对象的不同点之一。
session对象概要其主要关键点是:
· HTTP是无状态(stateless)协议;
· Web Server 对每一个客户端请求都没有历史记忆;
· Session用来保存客户端状态信息;
· 由Web Server 写入;存于客户端;
· 客户端的每次访问都把上次的session记录传递给Web Server;
· Web Server读取客户端提交的session来获取客户端的
状态信息;
Session对象的获取方法:
1)使用session关键字直接引用session对象
2)使用request对象的getSession()方法
使用request对象的getSession()方法可以返回HttpSession接口的实例对象,也就是session对象,注意,这个新获得的HttpSession对象不能够被命名为session,因为session是JSP引擎自动创建的当前session对象的一个同步副本。
首先使用getSession()方法获取HttpSession对象——mysession,然后输出它的id,同时也输出session的id,程序4-18的运行结果证明了这两个id是一样的,要注意的是每个用户的session对象的id是不同的(服务器就靠不同的id鉴别不同的session对象),而且每个用户只能够有一个session对象,无论mysession还是session,都是当前session对象的一个同步副本。
3)使用PageContext对象的getSession()方法
使用pageContext对象的getServletContext()方法可以获得application对象的副本,同样,使用pageContext对象的getSession()方法也可以获取session对象的一个副本。
程序段得到的三个结果都是相同的。
-
XML入门知识汇总
XML是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。下面小编准备了关于XML的入门知识,欢迎大家参考!是用来组织数据结构的结构数据包括如:电子数据表、地址簿、控制器参数、财务交易及技术绘图等。XML是一系列文字格式...
-
java非对称加密的源代码(rsa)
java非对称加密的源代码rsa有哪些基本知识,下面yjbys小编为大家一一讲解!鉴于rsa加密的重要性和相关源代码的匮乏,经过整理特此贴出。需要下载。importer;importrity.*;importublicKeySpec;importrivateKeySpec;importlidKeySpecException;importrivateKey;impor...
-
2017年Java程序员面试题集
Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。下面是小编整理的关于Java程序员面试题集,大家一起看看吧!1、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:1)抽...
-
Java数组定义常用方法
Java中的数组、是一种简单的线性数据存储结构、他用牺牲自动扩展大小来换取与集合相比的唯一优势——查询效率的提升。Java中的数组有什么类型?我们要怎么定义这些数组呢?下面跟yjbys小编一起来学习Java数组定义常用方法吧!java中有两种数据类型:a)引...