【Java】Guavaを使ってロウワスネークケースをロウワーキャメルケースへ変換する

やりたいこと

Spring BootプロジェクトでDBなどでよく使われるロウワーキャメルケース(例: user_name)の文字列をJavaの変数名でよく使われるロウワーキャメルケースへ変換する。

Guavaを使えば簡単

Guavaとは

GuavaはGoogleが開発しているJavaのコレクションの拡張機能や様々な文字列操作などの便利な機能を提供してくれるライブラリです。詳細は公式のユーザガイドを参照して下さい。

Guavaを使ったロウ話スネークケースからロウワーキャメルケースへの変換

まずはbuild.gradleにguavaを追加します。

dependencies {
    ...
    implementation("com.google.guava:guava:29.0-jre")
    ...
}

JUnitでテストコードを書いて動作検証をします。以下のコードのように1行で変換することができます。

import com.google.common.base.CaseFormat;
import org.junit.Test;

import static org.assertj.core.api.Assertions.assertThat;

public class GuavaTest {

    @Test
    public void test1() {
        // "user_name"を"userNameへ変換する"
        String lowerCamel = CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "user_name");
        assertThat(lowerCamel).isEqualTo("userName");
    }
}