博客
关于我
redis
阅读量:299 次
发布时间:2019-03-04

本文共 2454 字,大约阅读时间需要 8 分钟。

  1. 导包
org.springframework.boot
spring-boot-starter-data-redis
2.4.5
org.apache.commons
commons-pool2
com.fasterxml.jackson.core
jackson-core
2.9.2
com.fasterxml.jackson.core
jackson-annotations
2.9.2
com.fasterxml.jackson.core
jackson-databind
2.9.2

2 配置文件

在这里插入代码片

3 测试

@Autowired    RedisTemplate redisTemplate;    @Test    void contextLoads() {        redisTemplate.opsForValue().set("a","as");    }127.0.0.1:6379> keys *1) "\xac\xed\x00\x05t\x00\x01a"   乱码 是因为没有序列化 必须序列化

4 序列化

spring jdk 自己序列化 我们要自己去定义序列化

对象 转成 json 可以 但是 直接传递对象 会说序列化错误 在 对象后面 写

@Data@AllArgsConstructor@NoArgsConstructor@Componentpublic class User implements Serializable {       private String name;    private int age;}

自己写序列化 拿走直接用

@Configurablepublic class RedisConfig {       // 编写自己  redisTemplate    @Bean    @SuppressWarnings("all")    public RedisTemplate
redisTemplate(RedisConnectionFactory redisConnectionFactory) throws UnknownHostException { RedisTemplate
template = new RedisTemplate(); template.setConnectionFactory(redisConnectionFactory); // 自定义序列化开始 Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class); ObjectMapper om = new ObjectMapper(); om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL); jackson2JsonRedisSerializer.serialize(om); //string 序列化 StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); // key 使用string序列化 template.setKeySerializer(stringRedisSerializer); // hashkey 使用string序列化 template.setHashKeySerializer(stringRedisSerializer); // key 使用value序列化 template.setValueSerializer(jackson2JsonRedisSerializer); template.setHashValueSerializer(jackson2JsonRedisSerializer); template.afterPropertiesSet(); // 自定义序列化结束 return template; }}

总结

1 导包
2redisTemplate.opsForValue().set(“user”,user); 跟正常redis操作一样
3 写对象 对象必须序列化 不然会报错 不想序列化 传json
4 自定义序列化 是为了解决自带的 有转义字符
5 写redieUtil
1 过期时间
2 key 是否存在
3 删除 一个 多个key object。。。
4 普通缓存放入
5 增加几
6 减少几个
7 hash map set

转载地址:http://oijq.baihongyu.com/

你可能感兴趣的文章
qt中初始化界面的几种方法
查看>>
【图论】游乐场
查看>>
【图论】【最短路】USACO 2.4 牛的旅行 (最短路)
查看>>
【图论】【最短路】工厂的烦恼
查看>>
【图论】刻录光盘
查看>>
03-C语言进阶——模拟实现字符串操作函数
查看>>
C语言初阶——指针
查看>>
[88]. 合并两个有序数组(C语言)
查看>>
docker部署Hadoop环境
查看>>
最全环境搭建-常用软件安装
查看>>
Linux 安装 MySql
查看>>
系统架构
查看>>
网关程序的开发
查看>>
SpringBoot(Spring IOC 和 Spring MVC)(待补充)
查看>>
变量命名的通用规则
查看>>
MFC中精确获取时间并且计算事情所用时间
查看>>
鸡啄米之VS2010/MFC编程入门之三十一(常用控件:树形控件Tree Control 下)
查看>>
Linux系统基本操作命令
查看>>
程序员职业划分
查看>>
MFC使用opencv在picture控件上面播放摄像头视频
查看>>