关于Jfinal中加入redis

最近一个需求要用到redis,就是一些文章列表之类的数据,这些数据比较多。我想写到redis里面去。请问我配置RedisPlugin 就把他当db一样用吗?我每次查数据想先查询redis,如果redis没有再去查数据库,这些是不是要手动写?如:

Record resource = Db.use("database").findXXXX

if(resource==null)   resource = Db.use("redis").findXXXX

是否每一次查询都要这样手动设置?这样会不会太麻烦。


评论区

caoxusheng

2017-02-17 17:24

Cache cache = Redis.use("user");
cache.set("key", "value");
cache.get("key");

JFinal

2017-02-18 11:52

数据存放在数据库之中,然后用 redis 或 ehcache 这类缓存框架作为中间层提升性能就好,具体用法看下 jfinal 手册下面几个知识点:
1:ehcache plugin
2:redis plugin
3:active record 模块的缓存使用

水利万物而不争

2019-08-30 09:55

@JFinal 为何jfinal文档关于redis只有一点点,看到感觉模棱两可,希望文档样例多一些

JFinal

2019-08-30 10:21

@水利万物而不争 因为 jfinal 的 redis 插件仅仅是个极薄封装,连方法名都与底层的 jedis 是一样的,在源码中给出来了如何查看最全的文档:
/**
* Cache.
* Cache api 添加了中文注释,便于工程师更方便使用,另外还原样保持了
* Jedis api 的方法名称及使用方法,以便于仅仅通过查看 Redis 文档
* 即可快速掌握使用方法
* Redis 命令参考: http://redisdoc.com/
*/

上面的注释来自于:com.jfinal.plugin.redis.Cache.java

为了尽可能减少学习成本, jfinal 依照底层的 redis 原有的方法名、参数来安排 API, 只要原先会用 redis,直接使用 jfinal redis 插件根本不需要学习

水利万物而不争

2019-09-02 17:38

@JFinal 谢谢前辈,刚接触redis,所以不是很清楚怎么使用,但是业务上需要使用redis.所以,想看看有没有一些样例,并且项目使用的jfinal框架,所以想请教下,1框架中对redis中的链表进行了排序处理吗?我先前测试的时候,看了下数据,有排序,但是不清楚根据什么排序的。如果可以排序,那么是否可以根据
value值里面的某些特定值进行排序(例如:[{"sn":"84E0F421676707B2","category":"0","user_id":"1","user_name":"李一","user_privilege":"user","idCard":"123","grp":"1","type":"xx","password":"22","cardsn":"22","faceurl":"","fingerurl":"","pic":""}
,{"sn":"84E0F421676707B2","category":"0","user_id":"2","user_name":"李二","user_privilege":"user","idCard":"123","grp":"1","type":"xx","password":"22","cardsn":"22","faceurl":"","fingerurl":"","pic":""}
]样例数据中id。可以对链表中的数据依据id进行排序吗?)。另外,想深入了解jfinal,但是有些地方demo很少,看的不是很懂。希望前辈指点下,感谢

JFinal

2019-09-02 21:45

@水利万物而不争 链表的顺序是按照插入顺序来的,不可能进行排序

jfinal 官网的 demo 结合文档上手已经很快了,如果希望更快更深入加入俱乐部获取 jfinal 官网的源代码,大量实际代码可以直接用于项目中

肯投资的,其实是最省钱的,时间就是金钱

热门反馈

扫码入社