uokadaの見逃し三振は嫌いです

ここで述べられていることは私の個人的な意見に基づくものであり、私が所属する組織には一切の関係はありません。

java-fakerからdatafakerに移行した

TL;DR

java-fakerのメンテナンスがしばらくされていないのでjava-fakerをforkしたdatafakerに移行した。

What's java-faker?

github.com

Java製のfake data generatorの実装。 rubyのfakerのJavaバージョンという位置づけのライブラリ。

github.com

最終リリースの1.0.2が2020年と1年以上新しいバージョンがリリースされていないことから有志がforkして新たにdatafakerというリポジトリが作成されそこでメンテナンスがされています。

github.com

datafakerの使い方としてはほぼjava-fakerと同じです。

ここにjavafakerを使ったサンプルコードがあります。

import com.github.javafaker.Faker;
import com.github.javafaker.Internet;
import java.util.Locale;

public class FakerApp {
    public static void main(String[] args) {
        Faker faker = new Faker(Locale.US);
        Internet internet = faker.internet();
        for (int i = 0; i < 10; i++) {
            System.out.println(internet.emailAddress());
        }
    }
}

ここからdatafakerへの移行は簡単で、パッケージ名をcom.github.javafaker から net.datafakerに変えるだけです。

import java.util.Locale;
import net.datafaker.Faker;
import net.datafaker.Internet;

public class FakerApp2 {
    public static void main(String[] args) {
        Faker faker = new Faker(Locale.US);
        Internet internet = faker.internet();
        for (int i = 0; i < 10; i++) {
            System.out.println(internet.emailAddress());
        }
    }
}

datafakerは積極的にメンテナンスされていて機能も順調に増えているので手が空いていたら移行をオススメします。