如何设计生成用户uid?

(手机版没法上传图片,今晚回去补一下)

一般uid如上图是一串固定长度数字,请问是如何生成的?在数据库存储uid的时候,一般不都是从1开始然后自增长的吗?如何实现这种固定长度的id?现在自己有一种思路不知道对不对:在数据库中从1开始自增长uid,然后会出现id为1和21这种位数不同的情况,显示的时候,通过一定的加密算法将不固定长度的uid加密成固定长度uid进行显示吗?

汪汪一只猫
浏览 1949回答 5
5回答

泛舟湖上清波郎朗

import uuid uid = uuid.uuid1()

森林海

固定长度很好办: >>> '%012d'%1 '000000000001' >>> '%012d'%21 '000000000021' >>> '%012d'%21222 '000000021222' >>> 或者存数据库时: >>> import uuid >>> uuid.uuid4() # 随机生成一个 uuid UUID('01ff74a3-e22f-4eaa-b268-b040c13e2313') >>> str(_) '01ff74a3-e22f-4eaa-b268-b040c13e2313' >>>

弑天下

了解下雪花算法。

慕后森

了解下 hashids
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java