`
jaychang
  • 浏览: 738473 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类
最新评论

Tomcat session保存至MySQL

阅读更多

实验环境为tomcat7.0.64 mysql 5

准备工作

1、需要创建session表

     

CREATE TABLE `tomcat_sessions` (
 
	`session_id` varchar(100) NOT NULL,
  
	`valid_session` char(1) NOT NULL,
  
	`max_inactive` int(11) NOT NULL,
  
	`last_access` bigint(20) NOT NULL,
  
	`app_name` varchar(255) DEFAULT NULL,
  
	`session_data` mediumblob,
  
	PRIMARY KEY (`session_id`),
  
	KEY `kapp_name` (`app_name`)

) 
ENGINE=MyISAM DEFAULT CHARSET=utf8;

 

2、将mysql驱动放到$CATALINA_HOME/lib目录下

      这个就不用多费口舌了

3、修改context.xml文件

<Manager className="org.apache.catalina.session.PersistentManager"           
        maxIdleBackup="1"
        minIdleSwap="0"
        maxIdleSwap="0"
        processExpiresFrequency="1"
        saveOnRestart='true'>

        <Store className="org.apache.catalina.session.JDBCStore"                
                connectionURL="jdbc:mysql://localhost:3306/test?user=root&amp;password=123456"
                driverName="com.mysql.jdbc.Driver"
                sessionAppCol="app_name"
                sessionDataCol="session_data"
                sessionIdCol="session_id"
                sessionLastAccessedCol="last_access"
                sessionMaxInactiveCol="max_inactive"
                sessionTable="tomcat_sessions"
                sessionValidCol="valid_session" />
</Manager>

 

试验:

启动tomcat    catalinar.bat run

写两个jsp页面,一个页面里写session.setAttribute("id":"0001");session.setAttribute("name":"jaychang");

 

访问这个jsp,观察MySQL的test数据库的tomcat_sessions表数据


 说明实验成功了!(注意:上面session有效时间应为session失效时间,是我写错了 ,即从用户发出请求开始到session销毁的时间为1800秒)

 

 

再整一个jsp, <%session.invalidate();%>,访问下

 

发现数据库里这条记录就消失了。

 

至此Tomcat 配置 session保存在MySQL的配置方法,就简单说到这里,希望对您有帮助。如果有好的建议,欢迎讨论。 

 

参考:

http://stackoverflow.com/questions/17305128/tomcat-user-session-storage-with-jdbcstore-immediate-session-timeout

 

https://tomcat.apache.org/tomcat-7.0-doc/config/manager.html

  • 大小: 528.3 KB
分享到:
评论

相关推荐

    redis缓存服务器Nginx+Tomcat+redis+MySQL实现session会话共享

    "redis缓存服务器Nginx+Tomcat+redis+MySQL实现session会话共享"的主题旨在探讨如何利用这些技术组件来实现这一目标。以下是相关知识点的详细说明: **Redis**:Redis是一个高性能的键值数据存储系统,常用于做缓存...

    redis+tomcat共享session

    在Tomcat中,通过配置可以将Session数据保存到Redis中,这样无论用户请求哪台服务器,都可以从Redis中获取到正确的Session信息,从而实现Session共享。 首先,我们需要在所有Tomcat服务器上安装并配置Redis。这包括...

    tomcat9+apr+redissession共享

    标题中的“tomcat9+apr+redissession共享”指的是在Tomcat 9服务器中,通过使用Apache Portable Runtime (APR)库以及Redis来实现Session的共享。这通常是为了在分布式环境中解决Session复制和管理的问题,提高应用的...

    JSP_tomcat_mysql_servlet_session

    标题“JSP_tomcat_mysql_servlet_session”揭示了这个实例是关于在Java Web开发中使用JSP、Tomcat服务器、MySQL数据库以及Servlet和Session来实现Model-View-Controller(MVC)架构的一个实践项目。这里我们将深入...

    keepalived+nginx+tomcat+redis+mysql所需的包

    keepalived+nginx+tomcat+redis+mysql所需的包,里面包含了三个tomcat与Redis做session共享的jar,编译安装Mysql所需要Boost库和Cmake的包。

    负载均衡nginx+tomcat+terracatta+nfs+mysql

    在构建高性能、高可用性的Web服务环境中,"负载均衡nginx+tomcat+terracotta+nfs+mysql"是一个常见的架构组合。这个组合充分利用了各组件的优势,以实现数据的高效处理、分布式存储以及会话共享,确保系统的稳定性和...

    Tomcat7和mysql连接池的配置方法和测试.pdf

    Tomcat7 和 MySQL 连接池的配置方法和测试 Tomcat7 是一个基于 Java 的开源 Web 服务器软件,它可以与 MySQL 数据库集成,通过连接池机制来提高数据库访问效率。在本文中,我们将详细介绍 Tomcat7 和 MySQL 连接池...

    学生管理系统jsp tomcat mysql

    【标题】"学生管理系统jsp tomcat mysql"是一个基于Java Web技术构建的学生信息管理系统的实例,主要采用了JSP、Tomcat服务器和MySQL数据库作为核心技术栈。 【描述】该系统旨在实现对学生信息的有效管理和操作,...

    基于jsp-tomcat-MysqL的新闻发布系统

    【基于jsp-tomcat-MysqL的新闻发布系统】是一个典型的Web应用程序开发案例,它结合了前端技术、服务器端技术和数据库管理技术,用于构建动态、实时的新闻信息发布平台。在这个系统中,`jsp`(JavaServer Pages)负责...

    mySQL+Tomcat

    MySQL和Tomcat是两个在IT领域中非常重要的组件,它们分别负责数据管理和Web应用程序的运行。MySQL是一款开源的关系型数据库管理系统,而Tomcat则是一个开源的Java Servlet容器,常用于部署Java Web应用。将这两者...

    nginx+tomcat+redis+mysql.txt

    nginx+tomcat+redis+mysql

    linux tomcat mysql jdk

    - 会话级别:执行 `SET SESSION sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';` - 全局级别:执行 `SET GLOBAL sql_...

    Tomcat+Servlet+mysql简单的登录注册和转跳到主页

    "Tomcat+Servlet+mysql简单的登录注册和转跳到主页"是一个基础的Web应用项目,它结合了三个核心组件:Tomcat服务器、Servlet技术以及MySQL数据库,用于实现用户的基本登录和注册功能,并在验证成功后转跳至主页。...

    nisi脚本配置jdk tomcat mysql redis

    nsExec::Exec 'cmd /c $INSTDIR\mysql\bin\mysqld.exe" -install Mysql --defaults-file="$INSTDIR\\mysql\\my.ini' detailprint "install mysql Service success..." detailprint "--------------------------...

    Tomcat7和mysql连接池的配置方法和测试

    Tomcat7 和 MySQL 连接池的配置方法和测试 Tomcat7 是一个流行的开源 Java Web 服务器,可以与 MySQL 等关系数据库管理系统集成,使用连接池来提高数据库访问效率。在本文档中,我们将详细介绍 Tomcat7 和 MySQL ...

    session共享tomcat7 memcached 文档

    本文将介绍如何通过Nginx、Tomcat、MySQL和Memcached来构建一个可以实现动静态页面分离以及Session共享的系统。 #### 二、项目拓扑 本项目的拓扑结构主要包括以下几个组件: 1. **Nginx**:作为反向代理服务器,...

    基于jsp+MySQL+tomcat框架的一个简单博客

    【基于jsp+MySQL+tomcat框架的一个简单博客】 在IT领域,开发Web应用程序时,常常会采用各种技术栈。这个“基于jsp+MySQL+tomcat框架的一个简单博客”项目就是一个典型的示例,它展示了如何利用JavaServer Pages...

    Tomcat配置jsp连接mysql的连接池方法

    本文将详细介绍如何在Tomcat中配置JDBC连接池,以连接到MySQL数据库。 首先,我们需要了解几个关键的配置参数: 1. **driverClassName**: 这是JDBC驱动类的完整名称。对于MySQL,通常是`com.mysql.jdbc.Driver`...

    手动发布JBPM默认Demo到Tomcat和MySQL (转)

    本文将详细介绍如何手动部署JBPM默认的示例项目至Tomcat服务器,并连接MySQL数据库的过程。JBPM是一个开源的工作流引擎,用于自动化业务流程。通过本文,您将了解到从下载JBPM开始,直至完成所有必要的配置步骤来...

    tomcat8+redis保持session共享,实现真正意义上的负载均衡

    本资源包含有nginx+tomcat+mysql主从+redis部署详细文档以及安装包,因开源组件tomcat-redis-session-manage-tomcat8.jar目前不支持tomcat8,本人亲自对该jar包对源码进行过修改可支持tomcat8 亲测有效,非常适合不...

Global site tag (gtag.js) - Google Analytics