Question

Vu le poste que je l'ai fait sur la performance guid séquentielle sur Microsoft.NET Framework (voir Quels sont l'amélioration des performances de séquentielle Guid sur standard Guid? ) quelqu'un peut-il avoir un bon, bien sûr, Java rapide et fonctionne bien la mise en œuvre du même algorithme mis en œuvre dans les DLL Windows?

Cordialement Massimo

Était-ce utile?

La solution

Voir cet article: http://www.informit.com/ articles / article.aspx? p = 25862 & SEQNUM = 7 (liée à la page 7).

Il contient un algorithme pour ce que l'auteur appelle « COMB » Guids; Je reproduis son code (SQL) ci-dessous:

SET @aGuid = CAST(CAST(NEWID() AS BINARY(10)) 
+ CAST(GETDATE() AS BINARY(6)) AS UNIQUEIDENTIFIER)

Trivial pour convertir ce à Java, ou langue de votre choix. Le principe qui doit sous-jacente est de faire la date d'un composant du Guid. L'article entier est une bonne lecture, comme il le fait une belle analyse de la performance des différentes approches.

Autres conseils

J'utilise ceci pour générer des UUID (Universally des ID uniques) pour mes DTO qui agissent comme des clés de substitution pour les collections transitoires. Je ne sais pas si c'est la même chose, mais il peut vous orienter dans la bonne direction.

import java.util.UUID;
...
    private String uuid=null;
...
    protected String getUuid() {
        synchronized (this) {
          if (null ==uuid) {
            uuid = UUID.randomUUID().toString();
          }
          return uuid;
        }
      }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top