1. 程式人生 > >SpringBoot+Redis 入門

SpringBoot+Redis 入門

SpringBoot+Redis 入門

redis:

以key-value的形式將資料儲存於記憶體中。其主要資料型別有string、hash、list、set、zset(有序的set)。
redis安裝:

windows
https://blog.csdn.net/u010137839/article/details/80210328
linux
https://www.cnblogs.com/lovefendi/p/7205833.html

此處只講linux下安裝的注意事項
1 下載redis安裝包
登陸 https://redis.io/ 下載後上傳至linux伺服器
或者 直接執行

wget http://download.redis.io/releases/redis-4.0.0.tar.gz

2 解壓安裝包

tar xzf redis-4.0.0.tar.gz
cd redis-4.0.0
make (make若失敗可執行 make MALLOC=libc)

3 在執行make後可能會提示 缺少gcc,tcl之類的錯誤

yum install gcc
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
sudo tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
cd /usr/local/tcl8.6.1/unix/
sudo ./configure
sudo make
sudo make install

4 若yum執行失敗,請重新安裝yum,安裝中可能出現缺少依賴包的問題,安裝對應包即可

https://www.cnblogs.com/puloieswind/p/5802672.html

5 安裝完yum後執行步驟3,再到redis目錄下執行make
6 mkdir usr ,將src目錄下的redis-server、redis-benchmark、redis-cli移到usr,並將redis-4.0.0目錄下的redis.conf檔案移到usr目錄下

7 啟動服務端

./redis-server redis.conf

8 啟動客戶端測試

redis-cli
> set test laowang
> ok
> get test
> laowang

---------------------redis搭建成功----------------------------------------------------
注意事項:
搭建後端口、密碼及外部訪問
修改redis.conf檔案:
將# requirepass foobared中的#去除 ,修改foobared為所需要的密碼
將bind 127.0.0.1 註釋
修改:protected-mode no
關閉防火牆:chkconfig iptables off

SpringBoot連線redis

新增依賴pom.xml

 <!-- redies -->
		 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
         </dependency>

修改application.yml

spring:
	redis:
   		#redis伺服器地址
         host: 10.8.206.217
    	#redis連線密碼
         password: eastcom
    	#redis資料庫索引(預設為0)
         database: 0
    	#redis伺服器連線埠
         port: 6379
    	#連線超時時間(毫秒)
         timeout: 0
    	#redis連線池設定
         pool:
    	 #最大連線數(負數表示沒有限制)
             max-active: 300
      	#最小空閒連線
             min-idle: 1
      	#最大空閒連線
             max-idle: 100
      	#最大阻塞等待時間(負數表示沒有限制)
             max-wait: -1

新增java程式碼
在controller類中新增攔截器

public class IndexController {
@Autowired
	private StringRedisTemplate stringRedisTemplate;
@RequestMapping({ "/test" })
	@ResponseBody
	public String rediesRest(ServletRequest request) {
		stringRedisTemplate.opsForValue().set("test", "laowang");

		return stringRedisTemplate.opsForValue().get("test");
	}

頁面訪問localhost:8080/test
返回 laowang
redis訪問成功

注意事項:
在連線redis前請先telnet ip 埠 若成功再執行程式
redis預設有16個數據庫 請注意連線的引數 database: 0