0Pricing
Java Academy · レッスン

ユースケース:JSONとSQL

構造化テキストをきれいに埋め込みます

「ユースケース:JSONとSQL」はCoddyKit上の無料Java Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJava Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Java Academyコースには全4レッスンが含まれています。

テキストブロックが活躍する場面

テキストブロックは、JSON、SQL、HTML、XMLのような構造化テキストの埋め込みに最適です。これらの形式では引用符や改行を多用するため、通常の文字列では扱いにくくなります。

JSONを埋め込む

JSONには二重引用符が数多く含まれます。テキストブロックではエスケープする必要がないため、リテラルが実際のJSONとまったく同じ見た目になります。

public class Main {
    public static void main(String[] args) {
        String json = """
            {
              "name": "Alice",
              "age": 30,
              "active": true
            }
            """;
        System.out.print(json);
    }
}

JSON配列

入れ子になった配列やオブジェクトも、インデントが実際の構造と一致するため、読みやすい状態を保てます。

public class Main {
    public static void main(String[] args) {
        String json = """
            {
              "colors": ["red", "green", "blue"]
            }
            """;
        System.out.print(json);
    }
}

SQLを埋め込む

複数行のSQLクエリが明確になり、そのままコピーして使用できるようになります。断片を余計なスペースとともに連結する必要はもうありません。

public class Main {
    public static void main(String[] args) {
        String query = """
            SELECT id, name
            FROM users
            WHERE active = true
            ORDER BY name
            """;
        System.out.print(query);
    }
}

引用符付きの値を含むSQL

SQLの文字列リテラルでは単一引用符を使います。これはテキストブロックのデリミタと衝突しないため、そのまま変更せずに記述できます。

public class Main {
    public static void main(String[] args) {
        String sql = """
            SELECT * FROM products
            WHERE category = 'books'
            """;
        System.out.print(sql);
    }
}

動的な値を組み立てる

実行時の値を埋め込むには、プレースホルダーとともにString.formatを使用します。実際のアプリでは手動でSQLを連結するのは避けるべきですが、表示用であればこの方法が明確です。

public class Main {
    public static void main(String[] args) {
        String template = """
            SELECT * FROM users
            WHERE id = %d
            """;
        String query = String.format(template, 42);
        System.out.print(query);
    }
}

formattedメソッド

テキストブロックはインスタンスメソッドformatted(...)と相性がよく、これはブロックにString.formatを適用する簡略記法です。

public class Main {
    public static void main(String[] args) {
        String json = """
            {"user": "%s", "score": %d}
            """.formatted("Bob", 95);
        System.out.print(json);
    }
}

HTMLを埋め込む

属性を含むHTMLマークアップでは、二重引用符を数多く使います。テキストブロックなら、整然として有効なHTMLらしい形を保てます。

public class Main {
    public static void main(String[] args) {
        String html = """
            <a href="https://example.com" class="link">
              Click here
            </a>
            """;
        System.out.print(html);
    }
}

XMLを埋め込む

XMLの設定用スニペットにも適しており、階層構造をひと目で確認できる形のまま保持できます。

public class Main {
    public static void main(String[] args) {
        String xml = """
            <config>
              <port>8080</port>
              <debug>true</debug>
            </config>
            """;
        System.out.print(xml);
    }
}

埋め込んだデータを処理する

一度定義すれば、通常の文字列と同じようにブロックを扱えます。ここではCSV形式のブロックの行数を数えています。

public class Main {
    public static void main(String[] args) {
        String csv = """
            id,name
            1,Alice
            2,Bob
            """;
        String[] rows = csv.strip().split("\n");
        System.out.println("Data rows: " + (rows.length - 1));
    }
}

複数のスニペットを組み合わせる

小さなテキストブロックをフォーマットして連結することで、より大きなドキュメントを組み立てられます。

public class Main {
    public static void main(String[] args) {
        String row = """
            <li>%s</li>
            """;
        String list = "<ul>\n" + row.formatted("One") + row.formatted("Two") + "</ul>";
        System.out.print(list);
    }
}

クイックチェック

JSONの埋め込みにテキストブロックが特に便利なのはなぜですか?

まとめ

テキストブロックの実践的な用途について学びました。

  • JSON、SQL、HTML、XMLに適しています
  • 二重引用符をエスケープする必要はありません
  • 値の埋め込みにはformatted(...)またはString.formatを使用します
  • 結果は解析や分割ができる通常のStringです
  • インデントが実際の構造を反映します

よくある質問

「ユースケース:JSONとSQL」レッスンは無料ですか?

はい。「ユースケース:JSONとSQL」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Java Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Java Academyコースには全4レッスンが含まれています。

「ユースケース:JSONとSQL」で何を学びますか?

構造化テキストをきれいに埋め込みます ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Java Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのJava Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「ユースケース:JSONとSQL」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このJava Academyレッスンでコードを書いて実行できますか?

はい。すべてのJava Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. テキストブロックの宣言
  2. インデントと除去
  3. テキストブロック内のエスケープ
  4. ユースケース:JSONとSQL
← Java Academyに戻る