Russian Data Generator — это библиотека на Java для генерации случайных данных, соответствующих российскому формату. Она используется для тестирования, заполнения баз данных и анонимизации данных.
Возможности:
- Генерация ФИО (Фамилия, Имя, Отчество)
- Генерация ИНН (12-значного для физических лиц)
- Генерация СНИЛС (страхового номера индивидуального лицевого счета)
- Генерация адресов (область, район, город, улица, индекс, полный адрес)
- Генерация номеров телефонов
- Поддержка генерации массивов данных с помощью
.size(n)
Библиотека доступна в Maven Central и может быть подключена напрямую.
Добавьте зависимость в pom.xml
:
<dependency>
<groupId>io.github.dooger1</groupId>
<artifactId>russian-data-generator</artifactId>
<version>1.1.0</version>
</dependency>
dependencies {
implementation 'io.github.dooger1:russian-data-generator:1.1.0'
}
import org.dooger1.russiandatagenerator.generator.identity.PersonGenerator;
public class Main {
public static void main(String[] args) {
PersonGenerator generator = new PersonGenerator();
String fullName = generator.generate();
System.out.println("Случайное ФИО: " + fullName);
}
}
List<String> fullNames = new PersonGenerator().size(5);
fullNames.forEach(System.out::println);
import org.dooger1.russiandatagenerator.generator.identity.PersonGenerator;
public class Main {
public static void main(String[] args) {
InnGenerator generator = new InnGenerator();
String inn = generator.generate();
System.out.println("Случайный ИНН: " + inn);
}
}
import org.dooger1.russiandatagenerator.generator.address.composite.FullAddressGenerator;
public class Main {
public static void main(String[] args) {
FullAddressGenerator generator = new FullAddressGenerator();
String address = generator.generate();
System.out.println("Случайный адрес: " + address);
}
}
List<String> addresses = new AddressGenerator().size(5);
addresses.forEach(System.out::println);
import org.dooger1.russiandatagenerator.generator.contact.PhoneNumberGenerator;
public class Main {
public static void main(String[] args) {
PhoneNumberGenerator generator = new PhoneNumberGenerator();
String phone = generator.generate();
System.out.println("Случайный номер телефона: " + phone);
}
}
Для удобства генерации списки регионов, городов и улиц хранятся в файлах в ресурсах (resources/
):
regions.txt
– список регионовcities.txt
– список городовstreets.txt
– список улицdistricts.txt
– список районовpostal_codes.csv
– соответствие регионов и почтовых индексов
Пример postal_codes.csv
:
Московская область,140
Санкт-Петербург,190
Челябинская область,454
...
Пример загрузки:
List<String> regions = ResourceLoader.loadList("regions.txt");
Russian Data Generator распространяется под лицензией MIT.
Если у вас есть предложения или ошибки, пожалуйста, создавайте issue на GitHub:
🔗 https://github.com/DooGer1/russian-data-generator/issues