簡體   English   中英

策略在java中創建4​​個字節的唯一ID

[英]strategy to create 4 bytes unique Id in java

我們的java應用程序有4個字節的大小限制來保存唯一ID。

我們被迫實施一個策略來創建大小為4字節的唯一ID。

有沒有人知道創建它的策略

是的,從一個隨機的32位整數開始並遞增它。

當你擴展時,任何其他東西都會過於苛刻(例如,如果你有10億個已經創建的ID並且需要隨機生成一個新的,你必須有一個10億的條目表來檢查內部存在...哎喲!)。

但如果絕對必須是隨機和獨特的,那么你可以采取的兩種策略是:

1)到目前為止,使用每個id的大HashSet ,並在生成新的隨機ID時檢查集合中是否存在。 如果是,請丟棄並重試。

2)將所有隨機使用的ID存儲在數據庫中,並執行SELECT以查看是否存在新生成的隨機ID。 如果是,請丟棄並重試。

如果唯一ID較大,您可以使用Guid(也稱為uuid),這些Guid生成得足夠大,以至於您永遠不會看到兩個Guids在任何地方都具有相同的值,而無需檢查。

有關Java中的Guids / UUID,請參閱http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html

我認為int可以滿足您的要求。

你可以這樣試試

private static byte[] synhead = {(byte)0xAA,0x55,0x7E,0x0B};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM