运行中的tomcat在web代码修改后tomcat自动reload deploy后出现session失效

tomcat在运行的过程中如果修改web项目的代码后,tomcat会自动检查到代码被修改

因此tomcat自动重新加载项目并且部署,如果程序用到了session,则之前的tomcat中

当前项目的session对象会因为当前项目的reload deploy后出现session失效的情况


原因:

因为tomcat重新加载项目时重新加载项目web.xml,也就是重新新建web的context上下文,

所以所有内容重新新建,对象实例重新创建。

下面为Spring+SpringMVC+Hibernate项目在tomcat上reload,tomcat输出的信息

六月 09, 2018 10:57:45 上午 org.apache.catalina.core.StandardContext reload
信息: Reloading Context with name [/HomeWorkNow3] has started
六月 09, 2018 10:57:45 上午 org.apache.catalina.core.ApplicationContext log
信息: Destroying Spring FrameworkServlet 'springMVC' //销毁SpringMVC
六月 09, 2018 10:57:45 上午 org.springframework.context.support.AbstractApplicationContext doClose
信息: Closing WebApplicationContext for namespace 'springMVC-servlet': startup date [Sat Jun 09 10:53:14 CST 2018]; parent: Root WebApplicationContext
六月 09, 2018 10:57:45 上午 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext  //销毁web应用上下文,session被销毁
六月 09, 2018 10:57:45 上午 org.springframework.context.support.AbstractApplicationContext doClose
信息: Closing Root WebApplicationContext: startup date [Sat Jun 09 10:53:14 CST 2018]; root of context hierarchy
六月 09, 2018 10:57:47 上午 org.apache.jasper.servlet.TldScanner scanJars
信息: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
六月 09, 2018 10:57:47 上午 org.apache.catalina.core.ApplicationContext log
信息: No Spring WebApplicationInitializer types detected on classpath
六月 09, 2018 10:57:47 上午 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring root WebApplicationContext //web应用上下文重新初始化
六月 09, 2018 10:57:47 上午 org.springframework.web.context.ContextLoader initWebApplicationContext
信息: Root WebApplicationContext: initialization started
六月 09, 2018 10:57:47 上午 org.springframework.context.support.AbstractApplicationContext prepareRefresh
信息: Refreshing Root WebApplicationContext: startup date [Sat Jun 09 10:57:47 CST 2018]; root of context hierarchy
六月 09, 2018 10:57:47 上午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from file [E:\JavaWorkStations\jeefile\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\src_HomeWorkNow3\WEB-INF\classes\config\spring\spring-beans.xml]
六月 09, 2018 10:57:47 上午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from file [E:\JavaWorkStations\jeefile\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\src_HomeWorkNow3\WEB-INF\classes\config\spring\spring-hibernate-cfg.xml]
六月 09, 2018 10:57:47 上午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from file [E:\JavaWorkStations\jeefile\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\src_HomeWorkNow3\WEB-INF\classes\config\spring\spring-mvc.xml]
六月 09, 2018 10:57:47 上午 org.springframework.jdbc.datasource.DriverManagerDataSource setDriverClassName
信息: Loaded JDBC driver: com.mysql.jdbc.Driver
六月 09, 2018 10:57:47 上午 org.hibernate.mapping.RootClass checkCompositeIdentifier
WARN: HHH000038: Composite-id class does not override equals(): com.yyc.entity.Choose
六月 09, 2018 10:57:47 上午 org.hibernate.mapping.RootClass checkCompositeIdentifier
WARN: HHH000039: Composite-id class does not override hashCode(): com.yyc.entity.Choose
Sat Jun 09 10:57:47 CST 2018 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
六月 09, 2018 10:57:47 上午 org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQLDialect
六月 09, 2018 10:57:47 上午 org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService
INFO: HHH000399: Using default transaction strategy (direct JDBC transactions)
六月 09, 2018 10:57:47 上午 org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory <init>
INFO: HHH000397: Using ASTQueryTranslatorFactory
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000228: Running hbm2ddl schema update
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000102: Fetching database metadata
Sat Jun 09 10:57:47 CST 2018 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000396: Updating schema
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: jdbcstudy.choose
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [courseid, userid]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: []
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [primary]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: jdbcstudy.course
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [begindate, enddate, coursename, grade, courseid]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: []
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [primary]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: jdbcstudy.courseinfo
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [courseinfo, courseinfoid, location, time, courseid]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: [courseid]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [courseid, primary]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: jdbcstudy.user
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [password, grade, userid, age, username]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: []
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [primary]
六月 09, 2018 10:57:47 上午 org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000232: Schema update complete
六月 09, 2018 10:57:47 上午 org.springframework.orm.hibernate4.HibernateTransactionManager afterPropertiesSet
信息: Using DataSource [org.springframework.jdbc.datasource.DriverManagerDataSource@669b239a] of Hibernate SessionFactory for HibernateTransactionManager
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signIn],methods=[GET]}" onto public java.lang.String com.yyc.controller.IndexController.signInPage(javax.servlet.http.HttpServletRequest)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signUp],methods=[POST]}" onto public java.lang.String com.yyc.controller.IndexController.signUp(org.springframework.ui.Model,com.yyc.entity.User,javax.servlet.http.HttpServletRequest) throws java.io.UnsupportedEncodingException
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signIn],methods=[POST]}" onto public java.lang.String com.yyc.controller.IndexController.signIn(org.springframework.ui.Model,com.yyc.entity.User,javax.servlet.http.HttpServletRequest)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signUp],methods=[GET]}" onto public java.lang.String com.yyc.controller.IndexController.signUpPage(com.yyc.entity.User,org.springframework.ui.Model)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses],methods=[GET]}" onto public java.lang.String com.yyc.controller.UserController.index(org.springframework.ui.Model,javax.servlet.http.HttpServletRequest)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}],methods=[GET]}" onto public java.lang.String com.yyc.controller.UserController.getUserInfo(com.yyc.entity.User,org.springframework.ui.Model)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses],methods=[POST]}" onto public java.lang.String com.yyc.controller.UserController.chooseCourse(java.lang.Integer,java.lang.Integer)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses],methods=[DELETE]}" onto public java.lang.String com.yyc.controller.UserController.deleteCourse(java.lang.Integer,java.lang.Integer)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses/{courseId}],methods=[GET]}" onto public java.lang.String com.yyc.controller.UserController.getCourseInfo(org.springframework.ui.Model,java.lang.Integer,java.lang.Integer)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users],methods=[PUT]}" onto public java.lang.String com.yyc.controller.UserController.editUser(com.yyc.entity.User) throws java.io.UnsupportedEncodingException
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
信息: Looking for @ControllerAdvice: Root WebApplicationContext: startup date [Sat Jun 09 10:57:47 CST 2018]; root of context hierarchy
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
信息: Looking for @ControllerAdvice: Root WebApplicationContext: startup date [Sat Jun 09 10:57:47 CST 2018]; root of context hierarchy
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler
信息: Mapped URL path [/js/**] onto handler 'org.springframework.web.servlet.resource.ResourceHttpRequestHandler#0'
六月 09, 2018 10:57:47 上午 org.springframework.web.context.ContextLoader initWebApplicationContext
信息: Root WebApplicationContext: initialization completed in 357 ms
六月 09, 2018 10:57:47 上午 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring FrameworkServlet 'springMVC'
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.FrameworkServlet initServletBean
信息: FrameworkServlet 'springMVC': initialization started
六月 09, 2018 10:57:47 上午 org.springframework.context.support.AbstractApplicationContext prepareRefresh
信息: Refreshing WebApplicationContext for namespace 'springMVC-servlet': startup date [Sat Jun 09 10:57:47 CST 2018]; parent: Root WebApplicationContext
六月 09, 2018 10:57:47 上午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from URL [file:/E:/JavaWorkStations/jeefile/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/src_HomeWorkNow3/WEB-INF/classes/config/spring/spring-mvc.xml]
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signIn],methods=[GET]}" onto public java.lang.String com.yyc.controller.IndexController.signInPage(javax.servlet.http.HttpServletRequest)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signUp],methods=[POST]}" onto public java.lang.String com.yyc.controller.IndexController.signUp(org.springframework.ui.Model,com.yyc.entity.User,javax.servlet.http.HttpServletRequest) throws java.io.UnsupportedEncodingException
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signIn],methods=[POST]}" onto public java.lang.String com.yyc.controller.IndexController.signIn(org.springframework.ui.Model,com.yyc.entity.User,javax.servlet.http.HttpServletRequest)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/signUp],methods=[GET]}" onto public java.lang.String com.yyc.controller.IndexController.signUpPage(com.yyc.entity.User,org.springframework.ui.Model)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses],methods=[GET]}" onto public java.lang.String com.yyc.controller.UserController.index(org.springframework.ui.Model,javax.servlet.http.HttpServletRequest)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}],methods=[GET]}" onto public java.lang.String com.yyc.controller.UserController.getUserInfo(com.yyc.entity.User,org.springframework.ui.Model)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses],methods=[POST]}" onto public java.lang.String com.yyc.controller.UserController.chooseCourse(java.lang.Integer,java.lang.Integer)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses],methods=[DELETE]}" onto public java.lang.String com.yyc.controller.UserController.deleteCourse(java.lang.Integer,java.lang.Integer)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users/{userId}/courses/{courseId}],methods=[GET]}" onto public java.lang.String com.yyc.controller.UserController.getCourseInfo(org.springframework.ui.Model,java.lang.Integer,java.lang.Integer)
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractHandlerMethodMapping$MappingRegistry register
信息: Mapped "{[/users],methods=[PUT]}" onto public java.lang.String com.yyc.controller.UserController.editUser(com.yyc.entity.User) throws java.io.UnsupportedEncodingException
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
信息: Looking for @ControllerAdvice: WebApplicationContext for namespace 'springMVC-servlet': startup date [Sat Jun 09 10:57:47 CST 2018]; parent: Root WebApplicationContext
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
信息: Looking for @ControllerAdvice: WebApplicationContext for namespace 'springMVC-servlet': startup date [Sat Jun 09 10:57:47 CST 2018]; parent: Root WebApplicationContext
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler
信息: Mapped URL path [/js/**] onto handler 'org.springframework.web.servlet.resource.ResourceHttpRequestHandler#0'
六月 09, 2018 10:57:47 上午 org.springframework.web.servlet.FrameworkServlet initServletBean
信息: FrameworkServlet 'springMVC': initialization completed in 181 ms
六月 09, 2018 10:57:47 上午 org.apache.catalina.core.StandardContext reload
信息: Reloading Context with name [/HomeWorkNow3] is completed

猜你喜欢

转载自blog.csdn.net/qq_34608620/article/details/80631131
今日推荐