1、一種Native的實現,產生真正的Uuid,好像用的人挺多的。
http://www.doomdark.org/doomdark/proj/jug/
開源的,LGPL協議。是採用了Native的方式實現的,不過提供了不同的平台的實現。包括:
FreeBSD_x86
Linux_x86
MacOSX_ppc
Solaris_sparc
Win_x86
使用方式如下:
import org.doomdark.uuid.UUID;
import org.doomdark.uuid.UUIDGenerator;
UUIDGenerator generator = UUIDGenerator.getInstance();
UUID uuid = generator.generateRandomBasedUUID();
2、一個純Java的實現,如下:
http://dev.w3.org/cvsweb/java/classes.EGP/org/w3c/tools/crypt/Md5.java
http://dev.w3.org/cvsweb/java/classes.EGP/org/w3c/util/UUID.java
使用方式如下:System.out.println(new UUID());
這個產生的可能不是真正的UUID,只不過重複的機會少一些而已。
3、UUID 2.0
http://freshmeat.net/redir/juuid/50118/url_zip/uuid-2.0.zip
(沒用過,不知道如何)
4、JDK 1.5
一個令人高興的訊息是,JDK 1.5帶了Uuid的實現。java.util.Uuid
JDK 1.4以前的版本,不帶Uuid的實現,真是麻煩!!無可否認,JDK 1.4的基礎類庫,有很多地方不如.NET Framework 1.0。不過好在第三方開源的類庫多,彌補了其著一個缺點。現在JDK 1.5帶了Uuid,徹底解決了這個問題。競爭促進進步,.NET的出現,使得Java發展更快了!
相關文章:
http://www.itworld.com/nl/java_entrp/06182002/
http://www.javaworld.com/javaworld/jw-08-2001/jw-0824-uddi.html
http://www.ietf.org/internet-drafts/draft-mealling-uuid-urn-03.txt