1. 程式人生 > >SpringBoot+MyBatis+Redis實現SSO單點登入系統(一)

SpringBoot+MyBatis+Redis實現SSO單點登入系統(一)

SpringBoot+MyBatis+Redis實現SSO單點登入系統(一)

 

一、SSO系統概述

       SSO英文全稱Single Sign On,單點登入。SSO是在多個應用系統中,使用者只需要登入一次就可以訪問所有相互信任的應用系統。它包括可以將這次主要的登入對映到其他應用中用於同一個使用者的登入的機制。它是目前比較流行的企業業務整合的解決方案之一。

二、環境搭建

1、Spring Boot 專案搭建

       專案框架搭建在這裡一樣不多說,網上有很多教程。所需的依賴:

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <start-class>cn.hzr0523.App</start-class>
        <java.version>1.8</java.version>
        <lombok.version>1.14.8</lombok.version>
        <jedis.version>2.9.0</jedis.version>
        <mybatis-plus>2.0.2</mybatis-plus>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>

        <!--缺少此jar包,導致@Mapper註解無效-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.2.0</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.0.29</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.7</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.41</version>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>${lombok.version}</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
        </dependency>
        <!--MyBatis Plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus</artifactId>
            <version>2.0.2</version>
        </dependency>
        <!--模板引擎-->
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity</artifactId>
            <version>1.7</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
            <version>1.4.7.RELEASE</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

2、Redis安裝

(1)Redis在windows下的安裝

       下載地址:https://github.com/MSOpenTech/redis/releases。 
這裡寫圖片描述
       下載好後,解壓檔案,進入資料夾,命令啟動: 
這裡寫圖片描述 
       如果想方便的話,可以把 redis 的路徑加到系統的環境變數裡,這樣就省得再輸路徑了,後面的那個 redis.windows.conf 可以省略,如果省略,會啟用預設的。服務端啟動好之後,不要關閉視窗,否則就訪問不了了。 
這裡寫圖片描述

 
       執行客戶端,測試安裝是否成功。

(2)Redis在Linux下的安裝

從官網下載安裝包,複製到Linux下,解壓: 
這裡寫圖片描述

 tar xzf redis-4.0.9.tar.gz    --解壓

在一開始安裝時,遇到了幾個問題,第一個就是gcc沒有安裝 
這裡寫圖片描述

 yum install gcc      --安裝GC編譯環境

但是依舊報錯。。這裡寫圖片描述 
使用此命令安裝即可解決。

 make MALLOC=libc    

malloc的全稱是memory allocation,中文叫動態記憶體分配,當無法知道記憶體具體位置的時候,想要繫結真正的記憶體空間,就需要用到動態的分配記憶體。 
安裝成功後,啟動redis服務

./redis-server ../redis.conf

這裡寫圖片描述
執行客戶端,測試是否安裝成功。 
這裡寫圖片描述 
至此,redis在linux上已完成安裝。