spring session
2016-12-18 20:49:14 0 举报
Spring Session是Spring框架中的一个子项目,它提供了一种简单而有效的方式来管理Web应用程序的会话。Spring Session可以与许多不同的存储提供程序(如Redis、MongoDB等)集成,以实现分布式会话管理。此外,Spring Session还提供了一些高级功能,如会话持久化、并发控制和安全性。 总之,Spring Session是一个强大的工具,可以帮助开发人员轻松地管理Web应用程序的会话。它具有高度可扩展性和灵活性,可以满足各种不同应用场景的需求。如果您正在开发一个需要处理大量用户请求的Web应用程序,那么Spring Session绝对值得一试。😊
作者其他创作
大纲/内容
DelegatingFilterProxy
@EnableRedisHttpSession开启spring-session的
OncePerRequestFilter
CookieHttpSessionStrategy
完成对redis数据库的操作
RedisSession
完成DefaultCookieSerializer的装配
SpringBoot
RedisHttpSessionConfiguration
DefaultCookieSerializer
对请求对象request和响应对象response进行包装。都带有cookie存储的属性和获取的属性。
spring session 初始化类启动类
也就是包装以后的HttpSession
RedisConnectionFactory完成redis工厂的操作。它会根据你指定的类型去装配你采用的缓存实现类。和application.properties文件配置的:#设置存储的session类型是redisspring.session.store-type=redis#redis start#redis服务器的IP地址spring.redis.host=192.168.0.103#redis服务器的端口号spring.redis.port=6379#redis服务器的密码spring.redis.password=xiaoer1986spring.redis.database=0spring.redis.jedis.pool.max-active=20spring.redis.jedis.pool.max-idle=20spring.redis.jedis.pool.min-idle=2
\t该@EnableRedisHttpSession注释创建一个Spring Bean,其名称springSessionRepositoryFilter实现了Filter。过滤器是负责替换HttpSessionSpring Session支持的实现
Controller调用方法执行Session相关操作
调用session.getAttribute().session.setAttribute()session.removeAttribute()
1:注解中定义了session存储的时间,1800秒2:redis的存储key的命名空间3:redis数据存储的持久化操作
实例化Redis操作对象,完成对redis的添加,修改删除操作
拦截所有
RedisOperationsSessionRepository
SpringHttpSessionConfiguration
ExpiringSessionHttpSession
AbstractHttpSessionApplicationInitializer
SessionRepositoryFilter
0 条评论
下一页