SpringBoot整合Redis進行緩存數據庫查詢

一、導入redis的啓動器java

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

二、在yml配置文件中配置redis鏈接信息web

spring:
  redis:
    host: 192.168.206.128

三、在service中經過RedisTemplate操做redis,使用redis進行緩存數據庫查詢redis

/** * 根據ID查詢 * * @param id * @return */
public Article findById(String id) {
	// 從redis緩存中提取數據
	Article article = (Article) redisTemplate.opsForValue().get("article_" + id);
	// 若是緩存中沒有,則從數據庫中查詢並放入緩存中
	if(article == null){
		article = articleDao.findById(id).get();
		redisTemplate.opsForValue().set("article_" + id, article);
	}

	// 返回從redis緩存中得到的數據
	return article;
}

四、對數據庫進行刪除或修改後刪除redis中的緩存spring

/** * 修改 * * @param article */
public void update(Article article) {
	// 刪除redis中的緩存
	redisTemplate.delete("article_" + article.getId());
	// 修改操做
	articleDao.save(article);
}

/** * 刪除 * * @param id */
public void deleteById(String id) {
	// 刪除redis緩存數據
	redisTemplate.delete("article_" + id);
	// 刪除操做
	articleDao.deleteById(id);
}

五、緩存過時處理數據庫

// 設置緩存過時時間爲1天
redisTemplate.opsForValue().set("article_" + id, article, 1, TimeUnit.DAYS);
相關文章
相關標籤/搜索