Chciałbym wiedzieć, jak utworzyć własny identyfikatorgenerator dla JPA. Zamiast mieć generator, który jest inkrementatorem numerycznym, chciałbym stworzyć alfanumeryczny generator z rozróżnianiem wielkości liter, podobny do tego, w jaki sposób skracacze adresów URL śledzą witryny.
Na przykład skracacze adresów URL nie używają klawiszy numerycznych, ponieważ są one nieefektywne w porównaniu do generatora alfanumerycznego z rozróżnianiem wielkości liter. Zasadniczo coś w rodzaju urlshortener.com/20
można skrócić jako urlshortener.com/t
. Różnica staje się wykładniczo lepsza wraz ze wzrostem liczb, ponieważ wynosi 10 ^ n wobec 62 ^ n, gdzie n jest liczbą dostępnych cyfr.
Jak mogę to zaimplementować w JPA jako SequenceGenerator?
Odpowiedzi:
2 dla odpowiedzi № 1W przypadku przechowywania w bazie danych nie jest to bardziej wydajne. Do wyświetlania można użyć kodowania Base64 lub Base32.