javaweb项目,如何封装redis缓存?
需要达到的效果是:
Service调用DAO,如果缓存中没有再去查数据库,最后把查询结构添加到缓存
我的想法:
-
Service处理业务逻辑,不应该知道数据从何而来,也就不能直接操作缓存
-
操作缓存的对象应该也是一个DAO层对象,但是操作数据库的对象也是DAO层的对象,把操作数据库的逻辑和操作缓存的逻辑放到一次看上去并不大好,而且如果用mybatis作为orm,dao层基本插不进缓存的代码。
那么问题来了:
这个缓存应该用什么姿势封装起来?
甜虾没有脑
9 years, 7 months ago
Answers
楼主不知道mybatis本身是支持缓存的吗?
MyBatis定义了一个缓存Cache接口, 你可以自己实现它去连接Redis缓存。
片仓小次郎
answered 9 years, 7 months ago
Spring提供了一套关于缓存的标准,可以支持很多种类型的缓存
这里有一篇文章: 基于Spring的Web缓存 ,里面讲了几种不同层次的缓存,应该可以解决你的问题
zzzpila
answered 9 years, 7 months ago