查看“Spring-data-redis 的使用实践”的源代码
←
Spring-data-redis 的使用实践
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[category:Redis]] == 关于 == 无论是 Jedis 还是 JedisPool,都只是完成对 Redis 操作的极为基础的 API,在不依赖任何中间件的开发环境中,可以使用它们。但是,一般的 Java 开发,都会使用了 Spring 框架,可以使用 '''spring-data-redis''' 开源库来简化 Redis 操作的代码逻辑,做到最大程度的业务聚焦。 === CRUD 中应用缓存的场景 === 在普通 CRUD 应用场景中,很多情况下需要同步操作缓存,推荐使用 Spring 的 spring-data-redis 开源库。 * 注:CRUD 是指 Create(创建),Retrieve(查询),Update(更新)和 Delete(删除)。 # '''创建缓存''': #: 在创建(Create)一个 POJO 实例的时候,对 POJO 实例进行分布式缓存,一般以“'''缓存前缀+ID'''”为缓存的 Key 键,POJO 对象为缓存的 Value 值,直接缓存 POJO 的二进制字节。 #* 前提是:POJO 必须可序列化,实现 '''java.io.Serializable''' 空接口。如果 POJO 不可序列化,也是可以缓存的,但是必须自己实现序列化的方式,例如使用 '''JSON''' 方式序列化。 # '''查询缓存''': #: 在查询(Retrieve)一个 POJO 实例的时候,首先应该根据 POJO 缓存的 Key 键,从 Redis 缓存中返回结果。 #* 如果不存在,才去查询数据库,并且能够将数据库的结果缓存起来。 # '''更新缓存''': #: 在更新(Update)一个 POJO 实例的时候,既需要更新数据库的 POJO 数据记录,也需要更新 POJO 的缓存记录。 # '''删除缓存''': #: 在删除(Delete)一个 POJO 实例的时候,既需要删除数据库的 POJO 数据记录,也需要删除 POJO 的缓存记录。 为了演示 CRUD 场景下 Redis 的缓存操作 : 首先定义一个简单的 POJO 实体类:聊天系统的用户类。 :: 此类拥有一些简单的属性,例如 uid 和 nickName,且这些属性都具备基本的 getter 和 setter 方法: : <syntaxhighlight lang="Java" highlight=""> package com.crazymakercircle.im.common.bean; //... import java.io.Serializable; @Slf4j public class User implements Serializable { String uid; String devId; String token; String nickName; //....省略 getter setter toString等方法 } </syntaxhighlight> : 然后定义一个完成 CRUD 操作的 Service 接口,定义三个方法: :# saveUser完成创建(C)、更新操作(U)。 :# getUser完成查询操作(R)。 :# deleteUser完成删除操作(D)。 :: Service接口的代码如下: : <syntaxhighlight lang="Java" highlight=""> package com.crazymakercircle.redis.springJedis; import com.crazymakercircle.im.common.bean.User; public interface UserService { /** * CRUD 的创建/更新 * @param user 用户 */ User saveUser(final User user); /** * CRUD 的查询 * @param id id * @return 用户 */ User getUser(long id); /** * CRUD 的删除 * @param id id */ void deleteUser(long id); } </syntaxhighlight> 定义完了 Service 接口之后,接下来就是定义 Service 服务的具体实现。不过,这里聚焦的是:如何通过 spring-data-redis 库,使 Service 实现带缓存的功能? == 配置 spring-redis.xml ==
返回至“
Spring-data-redis 的使用实践
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
笔记
服务器
数据库
后端
前端
工具
《To do list》
日常
阅读
电影
摄影
其他
Software
Windows
WIKIOE
所有分类
所有页面
侧边栏
站点日志
工具
链入页面
相关更改
特殊页面
页面信息