Şifre (password) veya ID üretmek için aynı karakter sayısında rastgele String üretebilirsiniz. Bunun için Apache Lang kütüphanesi kullanılabilir. Aşağıdaki örnek farklı şekillerde String'ler üretilmiştir :
import org.apache.commons.lang.RandomStringUtils;
public class RandomStringUtilsTest {
public static void main(String[] args) {
System.out.println(RandomStringUtils.random(10));
System.out.println(RandomStringUtils.randomAscii(10));
System.out.println(RandomStringUtils.randomAlphabetic(10));
System.out.println(RandomStringUtils.randomNumeric(10));
System.out.println(RandomStringUtils.randomAlphanumeric(10));
}
}
Uygulama çalıştırıldığında aşağıkdaki gibi çıktı oluşabilir :
?????????
m8m-Kdjsly
TILdVbdWpo
7718949159
i4KDz23KeC
Görüldüğü gibi hep 10 karakter üretilmiştir. İlk örnekte gözükmeyen karakterlerin de üretilmesi nedeniyle ? şeklinde görülmüştür. Diğerlerinde ASCII , numeric , alfabetik ve alfanumeric şeklinde 10 karakterli şifreler üretilmiştir.
Apache Lang projesi için aşağıdaki gibi Maven bilgisini ekleyebilirsiniz:
<!-- https://mvnrepository.com/artifact/commons-lang/commons-lang -->
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>