请问,Spring Data JPA 和Redis 结合使用

Java_er 2016-05-30 07:27:23
请问,Spring Data JPA 和Redis 结合使用
请问,Spring Data JPA 和Redis 结合使用,Spring 也提供了Jedis的封装,Spring Data Redis,想问下,怎么把mysql数据库查询的结果放入redis缓存,这样
1、查询先查缓存,缓存查不到就查mysql数据库,查到数据之后加入redis缓存
2、如果从缓存查到了记录,但是这个时候跟数据库记录不一样,这个缓存就涉及到更新的问题了,请问怎么更新。
谢谢。
...全文
486 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
买房动力十足 2016-07-14
  • 打赏
  • 举报
回复
Spring有个redistemplate 他这个template封装了很多 使用redis的api,无需自己维护连接,事务
tianfang 2016-06-10
  • 打赏
  • 举报
回复
引用 12 楼 Javainging 的回复:
[quote=引用 11 楼 yys79 的回复:] [quote=引用 9 楼 tianfang 的回复:] redis 无法处理java对象的反射啊
其实我看的用redis的地方都是做高速缓存,如果是需要存储领域模型或者java对象,用mongodb的很多。用途不一样,没必要让他适应啥反射。[/quote] 恩,我主要也是用redis 作为档在mysql数据库前面的一层缓存[/quote] 看你是要自己写缓存还是要配置的缓存,从快速实现的角度,配置的缓存不需要开发,只需要学习和配置即可,错误率非常低,因为很多人帮助你测试好了 而自己实现缓存,很难做到充分测试,会遇到种种问题
Java_er 2016-06-06
  • 打赏
  • 举报
回复
引用 11 楼 yys79 的回复:
[quote=引用 9 楼 tianfang 的回复:] redis 无法处理java对象的反射啊
其实我看的用redis的地方都是做高速缓存,如果是需要存储领域模型或者java对象,用mongodb的很多。用途不一样,没必要让他适应啥反射。[/quote] 恩,我主要也是用redis 作为档在mysql数据库前面的一层缓存
loveunittesting 2016-06-05
  • 打赏
  • 举报
回复
引用 9 楼 tianfang 的回复:
redis 无法处理java对象的反射啊
其实我看的用redis的地方都是做高速缓存,如果是需要存储领域模型或者java对象,用mongodb的很多。用途不一样,没必要让他适应啥反射。
Java_er 2016-06-04
  • 打赏
  • 举报
回复
引用 9 楼 tianfang 的回复:
redis 无法处理java对象的反射啊
有Jedis redis的客户端 java版本的实现
loveunittesting 2016-06-03
  • 打赏
  • 举报
回复
引用 4 楼 tianfang 的回复:
找现成的技术组合 比如 hibernate可以使用ehcache做二级cache,只要配置就可以了。由于redis不是java开发的,和java项目结合的不好。
怎么个结合的不好呢?有没有具体的场景。redis是c语言编写的,难道只能和c语言结合?
loveunittesting 2016-06-03
  • 打赏
  • 举报
回复
很简单。直接使用消息机制生成和更新缓存就好了。
tianfang 2016-06-03
  • 打赏
  • 举报
回复
但是redis不是 ehcache之所以可以成为hibernate的二级cache,是ehcache为hibernate做了专项开发,原来的私有协议,现在已经升级到 jsr107 jcache。redis是C开发的,怎么可能会为hibernate/jpa做二次开发呢 你可以用redis,但是控制逻辑你就自己来写;你也可以选择使用ehcache,配置好即可以用
tianfang 2016-06-03
  • 打赏
  • 举报
回复
redis 无法处理java对象的反射啊
Java_er 2016-06-01
  • 打赏
  • 举报
回复
引用 4 楼 tianfang 的回复:
找现成的技术组合 比如 hibernate可以使用ehcache做二级cache,只要配置就可以了。由于redis不是java开发的,和java项目结合的不好。
Jedis 就是java版本的客户端
Java_er 2016-05-31
  • 打赏
  • 举报
回复
引用 1 楼 qq_31417619 的回复:
感觉JPA和Redis重复了呢?需要这样吗?
JPA 跟REDIS 是两个不同的东西,并没有重复的。
tianfang 2016-05-31
  • 打赏
  • 举报
回复
找现成的技术组合 比如 hibernate可以使用ehcache做二级cache,只要配置就可以了。由于redis不是java开发的,和java项目结合的不好。
qq_15915835 2016-05-30
  • 打赏
  • 举报
回复
这个是逻辑问题吧。更新数据库的时候更新缓存就好了,保证缓存的数据和数据库一致,或者更新数据库的时候直接删除缓存中数据
Nnick_s 2016-05-30
  • 打赏
  • 举报
回复
感觉JPA和Redis重复了呢?需要这样吗?

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧