转载自:http://www.cnblogs.com/ityouknow/p/5748830.html

Redis支持更丰富的数据结构,例如hashes, lists, sets等,同时支持数据持久化。除此之外,Redis还提供一些类数据库的特性,比如事务,HA,主从库。可以说Redis兼具了缓存系统和数据库的一些特性,因此有着丰富的应用场景

如何使用

1、引入 spring-boot-starter-redis

<dependency>  <groupId>org.springframework.boot</groupId>  <artifactId>spring-boot-starter-redis</artifactId>
</dependency>  #这是我自己加进去的,如果不加,后续很多功能无法使用
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>

2、添加配置文件

# Redis数据库索引(默认为0)
spring.redis.database=0
# Redis服务器地址
spring.redis.host=127.0.0.1
# Redis服务器连接端口
spring.redis.port=6379
# Redis服务器连接密码(默认为空)
spring.redis.password=
# 连接池最大连接数(使用负值表示没有限制)
spring.redis.pool.max-active=8
# 连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.pool.max-wait=-1
# 连接池中的最大空闲连接
spring.redis.pool.max-idle=8
# 连接池中的最小空闲连接
spring.redis.pool.min-idle=0
# 连接超时时间(毫秒)
spring.redis.timeout=0 

3、添加cache的配置类

@Configuration
@EnableCaching
public class RedisConfig extends CachingConfigurerSupport{@Beanpublic KeyGenerator keyGenerator() {return new KeyGenerator() {@Overridepublic Object generate(Object target, Method method, Object... params) {StringBuilder sb = new StringBuilder();sb.append(target.getClass().getName());sb.append(method.getName());for (Object obj : params) {sb.append(obj.toString());}return sb.toString();}};}@SuppressWarnings("rawtypes")@Beanpublic CacheManager cacheManager(RedisTemplate redisTemplate) {RedisCacheManager rcm = new RedisCacheManager(redisTemplate);//设置缓存过期时间//rcm.setDefaultExpiration(60);//秒return rcm;}@Beanpublic RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {StringRedisTemplate template = new StringRedisTemplate(factory);Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);ObjectMapper om = new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);jackson2JsonRedisSerializer.setObjectMapper(om);template.setValueSerializer(jackson2JsonRedisSerializer);template.afterPropertiesSet();return template;}}

3、好了,接下来就可以直接使用了

@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(Application.class)
public class TestRedis {@Autowiredprivate StringRedisTemplate stringRedisTemplate;@Autowiredprivate RedisTemplate redisTemplate;@Testpublic void test() throws Exception {stringRedisTemplate.opsForValue().set("aaa", "111");Assert.assertEquals("111", stringRedisTemplate.opsForValue().get("aaa"));}##第二个test没有跑通@Testpublic void testObj() throws Exception {User user=new User("aa@126.com", "aa", "aa123456", "aa","123");ValueOperations<String, User> operations=redisTemplate.opsForValue();operations.set("com.neox", user);operations.set("com.neo.f", user,1,TimeUnit.SECONDS);Thread.sleep(1000);//redisTemplate.delete("com.neo.f");boolean exists=redisTemplate.hasKey("com.neo.f");if(exists){System.out.println("exists is true");}else{System.out.println("exists is false");}// Assert.assertEquals("aa", operations.get("com.neo.f").getUserName());}
}

 

转载于:https://www.cnblogs.com/shuiyelifang/p/8135991.html

Spring Boot 使用Redis相关推荐

  1. Spring Boot与Redis的集成

    1.在Linux中安装Redis. 1.1.在线下载软件 1.2.安装软件 1.3.修改配置文件 1.4.启动Redis: 2.添加Redis起步缓存,在pom.xml中添加Spring Boot支持 ...

  2. Spring Boot 结合 Redis 缓存

    Redis官网: 中:http://www.redis.cn/ 外:https://redis.io/ redis下载和安装 Redis官方并没有提供Redis的Windows版本,这里使用微软提供的 ...

  3. Redis进阶-Jedis以及Spring Boot操作 Redis 5.x Cluster

    文章目录 Pre Jedis操作Redis Cluster 添加依赖 Code Spring Boot 操作Redis Cluster 引入 依赖 application.yml Code Pre R ...

  4. 玩转spring boot——结合redis

    前言 Redis 是一个高性能的key-value数据库. redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用.它提供了 ...

  5. Spring Boot集成Redis缓存之模拟高并发场景处理

    前言 同样我们以上一篇文章为例子,搭建好环境之后,我欧美可以模拟高并发场景下,我们的缓存效率怎么样,到底能不能解决我们实际项目中的缓存问题.也就是如何解决缓存穿透? Spring Boot集成Redi ...

  6. Spring Boot集成Redis缓存之RedisTemplate的方式

    前言 Spring Boot 集成Redis,将自动配置 RedisTemplate,在需要使用的类中注入RedisTemplate的bean即可使用 @Autowired private Redis ...

  7. Spring boot - 整合 Redis缓存(上)

    一.配置Pom文件 在使用spring boot 2.0整合redis时遇到了好多问题,网上很多例子都是1.x版本的.故2.0没有折腾好所以将2.0降到了1.5.降级后由于thymeleaf版本也会从 ...

  8. Spring Boot基础学习笔记08:Spring Boot整合Redis

    文章目录 零.学习目标 1.熟悉Redis相关概念 2.掌握使用Spring Boot整合Redis 一.Redis概述 1.Redis简介 2.Redis优点 (1)存取速度快 (2)数据类型丰富 ...

  9. spring boot shiro redis整合基于角色和权限的安全管理-Java编程

    一.概述 本博客主要讲解spring boot整合Apache的shiro框架,实现基于角色的安全访问控制或者基于权限的访问安全控制,其中还使用到分布式缓存redis进行用户认证信息的缓存,减少数据库 ...

  10. 十一、Spring Boot整合Redis(一)

    Spring Boot整合Redis    1. SpringBoot+单例Redis 1)引入依赖 <dependency>     <groupId>org.springf ...

最新文章

  1. 深度学习会议论文不好找?这个ConfTube网站全都有
  2. 基于ESP32的竞赛裁判系统功能调试-计时线圈功能
  3. 用STL vector 来创建二维数组 zz
  4. mysql bigint转string_无语了,直到今天,我才揪出MySQL磁盘消耗迅猛的“真凶”!...
  5. Poor God Water【矩阵快速幂】
  6. 《Java设计模式》之桥接模式
  7. Qt::WindowFlags
  8. CV Code|计算机视觉开源周报20200503期
  9. linux ti 电池驱动_全球跨国车企电动汽车平台和电池系统对比
  10. 洛谷——P1059 [NOIP2006 普及组] 明明的随机数
  11. Mcafee(麦咖啡) 无法升级的解决办法 附:进程详解,设置指南
  12. java中创建一个类
  13. 客户体验的投资回报率,你知道怎么算吗?
  14. c语言-基本计算 pm2.5,pm2.5标准
  15. c语言用while实现输出加法口诀表,「加法口诀」C语言编写一个加法口诀表 - 金橙教程网...
  16. 关于《一种鱼眼图象到透视投影图象的变换模型》
  17. 三维图像专业处理软件Dragonfly 应用-如何计算面孔隙率
  18. 七牛云配置二级域名,从而避免七牛云30天自动更改域名的问题
  19. 重生后发现高冷女同桌暗恋我!(一)
  20. 清新简约工作汇报PPT模板-优页文档

热门文章

  1. 总结2:上传图片至指定服务器
  2. Realtime Ray Tracing RenderMan Point Cloud
  3. 服务治理·理论篇(一)
  4. 使用ffmpeg录音
  5. android -上传文件到服务器
  6. ssh 与 locale
  7. 可爱的穆里尼奥,可爱的切尔西!
  8. prometheus 发送恢复 值_Prometheus基础知识介绍
  9. display: inline-block 布局
  10. Shell_mysql命令以及将数据导入Mysql数据库