java如何生成一个序列?项目重启也不会重置

如题,有一个数字,我需要在这个数字的基础上,依次加1,并且项目在重启后,这个数字不会重置;

6个回答

三个办法
用当前时间作为前缀
将生成的序列(起码最后生成的那个)记录下来
使用guid,或者别的高度随机的长编码,虽然理论上存在重复概率,但是在工程上可以认为没有重复

把生成的数字添加到数据库就不会改变,不然项目重启,总会被重置,就算添加到session域中也是仅限于浏览器重启,不会改变的就是数据库中的内容了,然后动态获取与添加

  1. 将"数字"保存到数据库
  2. 将"数字"输出到文件中
  3. 项目启动时将"数字"初始化到应有的值

在数据库建一个序列sequence,查这个序列sequence就可以了,查一次加一,也可以加你想要的。一直在库里不会变的

存在数据库 或者文件中 注意线程安全

保存到数据库或者文件都可以

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问