代码经验

  1. 数据库插入操作,需要有返回值。根据数据库有些字段不允许为空,故在service中进行校验,为空时输出提示信息

  2. 写从未写过的代码,先写个简单的Demo树立信心。再写一个复杂的Demo可以让你考虑更全面。

Redis 的key设计技巧

根据主键列进行查询

公式:

表名:主键列名:主键列值:非主键列名

比照关系数据库的设计: 1): 把表名转换为key前缀. 2): 第2段放置用于区分区key的字段–对应mysql中的主键的列名,如userid 3): 第3段放置主键值,如2,3,4…., a , b ,c 4): 第4段,写要存储的列名

示例: 表名: user user表

userid

username

password

emai

1

lurenjia

1111111

lurenjia@163.com

对该表设置redis的key如下设计:

key

value

user:userid:1:username

lurenjia

user:userid:1:password

111111

user:userid:1:email

lurenjia@163.com

根据非主键列查询

两步进行: 1)先根据非主键列设置一个key,存储的是主键的列值

表名:非主键列名:主键列值:主键列名
user:username:lurenjia:uid

2)再根据主键列值查询其他数据。

表名:主键列名:主键列值:非主键列名
user:userid:1:password

示例:根据username查询email 1.获取如下key的值

user:username:lurenjia:uid

假设查询所得的结果为 1

2.根据以下key查询email

user:userid:1:email

参考

redis总结4-KEY设计技巧,常见问题

分层思想

若大体逻辑一样,使用分层结构,接口,抽象实现层

如何做到代码的低耦合

方法传入的参数尽量少 方法中只操作返回值属性。 返回值设计其他实体,

阅读源码

找准入口,逐步跟进

尝试类图

找不到的时候,有可能是消费者模式

Last updated

Was this helpful?