spring-session-data-redis session共享

1.添加maven依赖



   org.springframework.boot
   spring-boot-starter-redis
   ${redis.version}


   org.springframework.session
   spring-session-data-redis
   ${redis.version}

2.配置application.property文件

##Redis
spring.redis.host=192.168.1.12
spring.redis.port=6379
spring.redis.database=2
spring.redis.password=
spring.session.store-type=none

3.配置RedisSessionConfig.java

/**
 * @author tiankonglanlande
 * @description
 * @createTime 2018 - 3 - 19 15:19
 */
@Configuration
@EnableRedisHttpSession
public class RedisSessionConfig {
    
}

4.SessionController.java

/**
 * @author tiankonglanlanlande
 * @description 测试session共享
 * @createTime 2018 - 3 - 19 15:17
 */
@RestController
@RequestMapping("/session/")
public class SessionController {

    @RequestMapping(value="first",method = RequestMethod.GET)
    public Map,Object> first(HttpServletRequest request){
       Map,Object> map=new HashMap<>();
       String name="小小";
       String sessionId=request.getSession().getId();
        map.put("name",name);
        map.put("sessionId",sessionId);
        request.getSession().setAttribute("map",map);
        return map;
    }
    @RequestMapping(value="second",method = RequestMethod.GET)
    public Map,Object> second(HttpServletRequest request){
        Map,Object> map= (Map, Object>) request.getSession().getAttribute("map");
        map.put("sessionId2",request.getRequestedSessionId());
        return map;
    }
}

5.启动另个不同端口的相同项目

java -java app.jar --server.port=8080和java -java app.jar --server.port=8081
然后通过浏览器访问8080端口请求first接口,将信息存储到session,
再通过通过浏览器访问8080端口请求second接口获取到数据,可以看到两个不同端口的sessionid是一样的

说明:session共享了

运行效果

spring-session-data-redis session共享_第1张图片



参考原文:https://www.cnblogs.com/fengli9998/p/7881331.html

你可能感兴趣的:(spring-boot,Java,redis,session共享,Spring,Boot系列)