繁体   English   中英

如何将数据库生成的随机唯一值分配给Hibernate POJO的字段

[英]How to assign random unique value generated by the database to Hibernate POJO's field

问题是我需要为Java中的POJO字段之一生成唯一值。 我正在使用Hibernate。

使用序列生成器解决它非常简单,但是在我的现实中,我每次都需要使其随机,并且我需要它的值在10 ^ 5到10 ^ 6之间-它必须是6位数字。

因此,在Java服务中本地生成它也不是问题,但是如果我还有2个相同的服务怎么办。 如果它们生成相同的数字会破坏我的数字的唯一性,该怎么办。 这就是为什么我需要该数字由数据库生成。

请给我建议实现这一目标的最佳方法。 我需要遵循什么策略。 谢谢

无需在ORM级别上执行此操作。 只需让数据库引擎自动递增它即可。

您可以将字段设置为唯一,并从100,000 AUTO_INCREMENT = 100000;自动递增AUTO_INCREMENT = 100000; 创建表时。

您的电话号码将保证是唯一的。

如果您同时检查现有的最高编号和插入的内容,也可以在服务级别手动执行此操作。

您也可以通过触发器进行操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM