`

报表session与应用session常识普及

阅读更多

1. 报表session与应用session

报表集成到项目中可能会有一个疑问就是系统应用和报表应用在一个web服务器下,那系统session和报表session是不是一个session呢?如果不是那会不会有冲突呢?

答案是:不是同一个session也不会起冲突,因为应用的session存放的是request请求等一些共享信息,而报表session存放的是访问报表的相关信息,如访问的是不是同一个模板等,两者是完全独立,所以不会冲突。

2. 报表开发工具FineReport中创建与关闭session机制

正常情况下,当客户端浏览器访问报表服务器端的某张报表时,便会产生一个session会话,当用户关闭浏览器的时候就会通知报表服务器关闭这个session,但不会使保存在服务器端的session对象消失,同样也不会使已经保存到硬盘上的持久化cookie消失。

若用户的机器由于某种原因如非正常关机等等导致浏览器非正常关闭时,服务器没有收到关闭这个session的信息,会一直保存这个不必要的session。为了解决这个问题,我们软件中提供了这样一种机制,浏览器每隔40秒向服务器发送一个“i am alive”信息,若报表服务器一分钟没有收到这个信息便会自动关闭这个session。当浏览器遇到非正常停止时,便不会发送“i am alive”信息,相应的session不会在一分钟以内被关闭。

3. session基本概念

session机制本身并不复杂,然而其实现和配置上的灵活性却使得具体情况复杂多变。这也要求我们不能把仅仅某一次的经验或者某一个浏览器,服务器的经验当作普遍适用的经验,而是始终需要具体情况具体分析。

通俗的说:客户端浏览器访问某个地址,发送了一个请求,就产生一个session会话,现在的浏览器都可以打开多个tab窗口,打开的都属于一个session,当该浏览器关闭的时候session就关闭了。若不关闭该浏览器,再次打开一个浏览器,会重新创建一个session。

3.1 session在何时被创建

一个常见的误解是以为session在有客户端访问时就被创建,然而事实是直到某server端程序调用HttpServletRequest.getSession(true)这样的语句时才被创建,注意如果JSP没有显示的使用<%@page session="false"%>关闭session,则JSP文件在编译成Servlet时将会自动加上这样一条语句HttpSession session = HttpServletRequest.getSession(true),这也是JSP中隐含的session对象的来历。

由于session会消耗内存资源,因此,如果不打算使用session,应该在所有的JSP中关闭它。

3.2 session何时被删除

综合前面的讨论,session在下列情况下被删除:

a、程序调用HttpSession.invalidate() b、距离上一次收到客户端发送的session id时间间隔超过了session的最大有效时间 c、服务器进程被停止

3.3 如何做到在浏览器关闭时删除session

严格的讲,做不到这一点。可以做一点努力的办法是在所有的客户端页面里使用javascript代码window.oncolose来监视浏览器的关闭动作,然后向服务器发送一个请求来删除session。但是对于浏览器崩溃或者强行杀死进程这些非常规手段仍然无能为力。

0
0
分享到:
评论

相关推荐

    Java毕业设计-网上药店管理系统演示视频(高分期末大作业).rar

    6. 数据统计与报表:对销售数据进行统计分析,生成各类报表,为药店决策提供数据支持。这需要用到数据分析和可视化技术,如Echarts或Tableau。 7. 安全性:系统应具备良好的安全性,防止SQL注入、XSS攻击等,采用...

    web考勤系统

    Web考勤系统是一种基于Java Web技术的管理应用,主要用于企业或机构内部的员工考勤记录与管理。这个系统通常包含了用户界面、数据处理以及后台逻辑,以满足日常考勤打卡、统计、分析等多种需求。在Java Web开发中,...

    基于PHP的CRM客户管理系统源码.zip

    8. 报表与数据分析:CRM系统通常提供报表功能,帮助管理层了解销售趋势、客户行为等,以支持决策。 9. 自定义字段与工作流:为了满足不同企业的特定需求,CRM系统往往允许自定义字段,并能设置自动化的工作流,如...

    财务管理系统的设计说明.doc

    然而,随着Web应用的普及,服务器负载问题也日益严重,特别是对于高并发的财务数据请求,可能导致服务器超载,影响服务响应时间和系统的稳定性。 Web服务器的性能和网络传输质量是决定Web服务请求响应时间的关键...

    图书馆信息系统ASP

    Session对象用于跟踪用户在整个会话期间的状态,而Application对象则可存储在整个应用程序生命周期内的共享信息;Server对象提供了对服务器上的各种功能和服务的访问。 二、数据库连接与操作 图书馆信息系统通常...

    电子商务平台

    9. **报表与分析**:利用SQL Server的报表服务(Reporting Services)生成销售、库存等业务报表,帮助商家进行决策分析。 10. **移动兼容**:考虑到移动设备的普及,电商平台需具有响应式设计,确保在不同设备上都...

    25175员工工资管理系统 v2.0 build20111230-ASP源码.zip

    《员工工资管理系统 v2.0 build20111230 ASP源码解析与应用》 《员工工资管理系统 v2.0 build20111230》是一款基于ASP(Active Server Pages)技术开发的管理软件,主要用于企业内部进行员工薪酬管理。此系统在2011...

    ASP校园办公系统论文

    5. **未来发展与挑战**:随着技术的进步,ASP可能面临新的挑战,如Web 2.0和移动设备的普及。论文可能会探讨ASP与AJAX、jQuery等新技术的集成,以及如何适应多平台的需求。 另一篇文档"VB书店图书管理系统论文范文...

    asp+access人力资源管理系统设计功能丰富(源代码+论文).rar

    在信息化日益普及的今天,人力资源管理系统的应用已经成为了企业提升效率、优化管理的重要工具。本系统基于ASP(Active Server Pages)技术和ACCESS数据库,构建了一个功能丰富的、适用于中小型企业的HRM(Human ...

    ASP.NET编程百例

    9. 移动应用开发:随着移动设备的普及,越来越多的开发者需要考虑到如何让网站在移动设备上良好运行。***可以与Bootstrap、响应式设计等技术结合,以适应不同尺寸的屏幕。 10. 部署与调试:在开发完成后,将Web应用...

    asp网站电子商务网站

    12. **报表和分析**:ASP可以与数据分析工具结合,生成各种业务报表,帮助管理者了解销售趋势、客户行为等关键指标。 在“图书管理系统1”这个文件中,可能包含了实现上述功能的源代码、数据库文件或者相关的配置...

    oa.rar_PHP OA_oa php_oa系统_办公自动化_办公自动化 php

    6. 报表与数据分析:OA系统往往需要提供数据分析和报表生成功能,PHP可以结合开源BI工具如Pentaho或直接使用SQL查询进行数据提取、转换和加载,然后生成图表。 7. 移动端支持:随着移动设备的普及,OA系统也需具备...

    基于PHP的齐博B2B电子商务系统v1.0模板 php版 绿色模板 v1.0.zip

    10. 报表与分析:系统可能包含报表生成和数据分析功能,帮助商家了解销售趋势、客户行为等信息。PHP可以与各种数据分析工具集成,提供数据可视化报告。 综上所述,齐博B2B电子商务系统v1.0的PHP模板版是一个集成了...

    ASP源码ASP网上拍卖系统设计与实现(论文+源代码+开题报告)

    随着互联网技术的快速发展以及电子商务的日益普及,越来越多的传统交易方式被线上平台所取代。网上拍卖作为其中一种重要的商业模式,在全球范围内得到了广泛应用和发展。然而,现有的许多网上拍卖系统仍然存在用户...

    asp学籍管理源代码

    7. **报表生成**:自动生成各类统计报表,如学生花名册、成绩报告单、考勤记录等。 三、ASP技术的应用 - **数据库连接**:ASP通常与Access或SQL Server等数据库配合使用,通过ADO(ActiveX Data Objects)对象进行...

    基于PHP的EduWork中小学管理培训管理系统 php版.zip

    9. 报表与统计:EduWork可能有内置的报表和数据分析功能,帮助管理者了解学生的学习进度、教师的工作量等,以便做出决策。 10. 移动优化:考虑到现代教育环境中移动设备的普及,EduWork可能也提供了移动端的适配和...

    [电子商务]HiShop网店代理分销系统 v5.2 Beta 2_hishop.5.2.beta2(ASP.NET源码).rar

    4. **状态管理**:ASP.NET提供了多种状态管理机制,如视图状态、隐藏字段、Session等,以保持用户交互过程中的数据一致性。 二、HiShop网店代理分销系统特性 1. **代理分销模式**:系统支持代理分销模式,商家可以...

Global site tag (gtag.js) - Google Analytics