V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
guyeuro
V2EX  ›  问与答

Java 项目里如何管理 redis key 的名字比较好?

  •  
  •   guyeuro · 2017-07-28 15:01:28 +08:00 · 3086 次点击
    这是一个创建于 2677 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是写一些 constant 类,用 public final static String 变量存 key 命名的固定部分?

    譬如 read_book_by_user:user_id:3423211 那么

       public class RedisKeyConstants{
    
              public final static String READ_BOOK_BY_USER = "read_book_by_user:user_id:";
       }
    

    用的时候

       redisTemplate.opsForValue.get(READ_BOOK_BY_USER+user.getId());
    

    这样是比较好的普遍做法吗?

    5 条回复    2017-07-31 10:17:08 +08:00
    memi
        1
    memi  
       2017-07-28 15:47:51 +08:00
    用枚举就好了
    guyeuro
        2
    guyeuro  
    OP
       2017-07-28 16:01:58 +08:00
    @memi 有例子吗?
    xiaowangge
        3
    xiaowangge  
       2017-07-28 19:02:21 +08:00
    封装一下。写个类名,然后 key 可以是:

    getClass() + "userId"

    ReadBookCacheBean get(Long userid)
    jaryur
        4
    jaryur  
       2017-07-28 23:14:57 +08:00 via iPhone
    按业务分库,然后命名空间,已至于名字定义一个大致规范就好吧,如果非用程序统一生成,后期反作用明显
    guyeuro
        5
    guyeuro  
    OP
       2017-07-31 10:17:08 +08:00
    @jaryur 你意思是不做常量,而是另外用一个文档说明?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5651 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 09:05 · PVG 17:05 · LAX 01:05 · JFK 04:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.