zoukankan      html  css  js  c++  java
  • springboot集成Spring Session

    10.1 分布式集群环境下的集成(同域名、同项目)

    10.1.1        创建SpringBoot的web支持项目07-springboot-session

    创建项目

    10.1.2        在pom.xml文件中添加依赖

    <!-- 配置spring session的依赖 -->
    <dependency>
       <groupId>org.springframework.session</groupId>
       <artifactId>spring-session-core</artifactId>
       <version>2.1.2.RELEASE</version>
    </dependency>
    <!-- 配置spring session data redis的依赖 -->
    <dependency>
       <groupId>org.springframework.session</groupId>
       <artifactId>spring-session-data-redis</artifactId>
       <version>2.1.1.RELEASE</version>
    </dependency>
    <!-- springboot集成redis的起步依赖 -->
    <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>

    10.1.3        在application.properties中配置端口号、上下文根及Redis连接

    # 配置内嵌tomcat服务器信息
    server.port=8080
    server.servlet.context-path=/A07-springboot-session
    
    #配置redis连接信息
    spring.redis.host=192.168.132.128
    spring.redis.port=6379
    spring.redis.password=123456
    
    spring.session.store-type=redis

    10.1.4        创建SessionController向session中存取数据

    代码示例

    package com.bjpowernode.springboot.controller;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    import javax.servlet.http.HttpSession;
    
    @RestController
    public class SessionController {
    
        @GetMapping("/boot/set")
        public String setSession(HttpSession session){
            session.setAttribute("url","http://www.bjpowernode.com");
            return  "set session ok";
        }
    
        @GetMapping("/boot/get")
        public String getSession(HttpSession session){
           String url= (String) session.getAttribute("url");
           return  url;
        }
    }

    10.1.5        让项目使用SpringSession

    • 在SpingBoot程序入口类Application上@EnableRedisHttpSession注解
    package com.bjpowernode.springboot;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
    
    @SpringBootApplication
    @EnableRedisHttpSession
    public class A07SpringbootSessionApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(A07SpringbootSessionApplication.class, args);
        }
    
    }
    注解@EnableRedisHttpSession启用redis作为session容器

    • 在application.properties配置文件中加入(可选):spring.session.store-type=redis

    10.1.6        启动Redis服务

    10.1.7        启动SpringBoot程序测试

    设置地址:http://localhost:8080/A07-springboot-session/boot/set

    获取地址:http://localhost:8080/A07-springboot-session/boot/get

    • 通过Redis Desktop Manager查看Redis库中信息

    • 修改服务器端口号,通过jar包的方式启动9090端口的tomcat,通过浏览器访问从session中取数据
  • 相关阅读:
    88. Merge Sorted Array
    87. Scramble String
    86. Partition List
    85. Maximal Rectangle
    84. Largest Rectangle in Histogram
    [Windows] Diskpart Scripts and Examples
    [Windows] 对于 mount 到文件夹路径下的分区,也可以使用 GetDiskFreeSpaceExA 函数
    [Windows] DiskPart commands
    [Windows] 如何用编程的方式格式化硬盘
    Windows API Index
  • 原文地址:https://www.cnblogs.com/Tpf386/p/11050379.html
Copyright © 2011-2022 走看看