SpringBoot如何集成Jedis


  • 添加jedis依賴

在項目pom.xml文件中添加依賴

<!-- 添加jedis依賴 -->
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
</dependency>
  • 添加redis配置

在項目resources目錄中找到application.properties文件添加reids配置信息

# redis
redis.host=10.x.x.x
redis.port=6379 //redis端口
redis.timeout=3
redis.password=xxxx
redis.poolMaxTotal=10   //最大連接池
redis.poolMaxIdle=10    //最大休閑連接
redis.poolMaxWait=3
  • 測試例子

首先我們需要定義一個RedisConfig配置類,通過這個配置類對redis的相關屬性進行設置與獲取

@Component
@ConfigurationProperties(prefix="redis")
public class RedisConfig {
	private String host;
	private int port;
	private String password;
	private int timeout;
	private int poolMaxTotal;
	private int poolMaxIdle;
	private int poolMaxWait;
	
	public String getHost() {
		return host;
	}
	public void setHost(String host) {
		this.host = host;
	}
	public int getPort() {
		return port;
	}
	public void setPort(int port) {
		this.port = port;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	/*
            Something code....    //一部分屬性沒有編寫,這個自己整理吧
        */
}

接下來,我們就要測試連接redis是否成功.在SpringBoot->Controller層中寫上一個獲取某個key的值功能.
通常控制層一般調用服務層方法,也就是我們要在服務層里獲取Jedis類的實例對象,最后我們實例對象調用相關的方法jedis.get(key)來獲取鍵的值

控制層代碼如下

@Controller
public class DemoController {

	@Autowired
	RedisService redisService;
	
    @RequestMapping("/db/getredis")
	@ResponseBody
	public Result<String> getRedis()
	{
		String strVal = redisService.getInstance().get("Hello");
		return Result.success(strVal);
	}
}

服務層代碼如下

@Service
public class RedisService {
    @Autowired
	JedisPool jedisPool;
	
	@Autowired
	RedisConfig redisConfig;
	
	public Jedis getInstance(){
		Jedis jedis = new Jedis(redisConfig.getHost(),
				redisConfig.getPort());
		return jedis;
	}
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM