出力項目を増やすようちょっと修正版 Spring Batch[プログラミング]
(2026-07-13 21:47:27) by shinoda


< ページ移動: 1 2 3 4 >

色々と Spring Batch 6 で試している元のソースは「一番シンプルな Spring Batch 6 の Chunk 処理例」に掲載しているものだと言っているんだが、実は変更されている。

真面目に「一番シンプルな Spring Batch 6 の Chunk 処理例」のソースを使って、その後の記事の変更点を適用しようとしたらなんかコードが違う!?と戸惑われている方がいらっしゃるかもしれないので、一応、変更後のソースも載せておこう。

一番シンプルな Spring Batch 6 の Chunk 処理例」のソースを参照・・・と書かれていたら、実際にはこのソースを使用する。

テーブルも複数参照するように変わっているが JOIN で連結しているので SQL 文は一本だ。追加したテーブルは以下のとおり。

t_user_addresses(ユーザ住所)

<画像:20260713_base_springbatch1.jpg>

t_user_anniversaries(ユーザ記念日)

<画像:20260713_base_springbatch2.jpg>

これを、以前作った t_users(ユーザ情報テーブル)と連結して CSV に出力するように修正した。

<画像:20260713_base_springbatch3.jpg>

ただ、 SQL が変わったのと、出力する項目数が増えただけなので、基本的な構造は変わらない。

以下、修正点。


■Dto/UserCombinedDto.java(record クラス)

package com.netandfield.test.Dto;

public record UserCombinedDto(
    Long user_id,
    String user_name,
    String user_address1,
    String user_address2,
    String user_phone_number,
    String anniversary,
    String note
) {}

※以前作った TUserDto.java は廃止。


■Config/BatchConfig.java(バッチ設定クラス)

package com.netandfield.test.Config;

import javax.sql.DataSource;

< ページ移動: 1 2 3 4 >


コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る

Powered by
MT4i 3.0.8