Macchinetta Batch Framework (2.x) Development Guideline - version 2.3.4.RELEASE, 2025-3-28
> INDEX

概要

Macchinetta Batch Framework (2.x)の構成について説明し、Macchinetta Batch Framework (2.x)の担当範囲を示す。

Macchinetta Batch Framework (2.x)のスタック

Macchinetta Batch Framework (2.x)で使用するSoftware Frameworkは、 Spring Framework (Spring Batch) を中心としたOSSの組み合わせである。以下にMacchinetta Batch Framework (2.x)のスタック概略図を示す。

Macchinetta Batch Framework (2.x) Stack
図 1. Macchinetta Batch Framework (2.x)のスタック概略図

ジョブスケジューラやデータベースなどの製品についての説明は、本ガイドラインの説明対象外とする。

利用するOSSのバージョン

Macchinetta Batch Framework (2.x)のバージョン2.3.4.RELEASEで利用するOSSのバージョン一覧を以下に示す。

Macchinetta Batch Framework (2.x)で使用するOSSのバージョンは、原則として、Spring Boot Dependenciesの定義に準じている。 なお、バージョン2.3.4.RELEASEにおけるSpring Boot Dependenciesのバージョンは、 2.7.18である。

表 1. OSSバージョン一覧
用途 用途説明 GroupId ArtifactId Version

TERASOLUNA Batch
フレームワーク

バッチフレームワークを拡張する。

org.terasoluna.batch

terasoluna-batch

5.4.4.RELEASE

バッチフレームワーク

バッチフレームワークとして、Spring Batchを利用する。

org.springframework.batch

spring-batch-core

4.3.10

org.springframework.batch

spring-batch-infrastructure

4.3.10

基盤フレームワーク

フレームワークの基盤として、利用する。

org.springframework

spring-aop

5.3.39

org.springframework

spring-beans

5.3.39

org.springframework

spring-context

5.3.39

org.springframework

spring-expression

5.3.39

org.springframework

spring-core

5.3.39

org.springframework

spring-tx

5.3.39

org.springframework

spring-jdbc

5.3.39

org.springframework

spring-oxm

5.3.39

org.springframework.retry

spring-retry

1.3.4

Webコンテナ起動の際に、Spring Batchと連携する。

org.springframework

spring-webmvc

5.3.39

O/R Mapper

org.mybatis

mybatis

3.5.17

org.mybatis

mybatis-spring

2.1.2

DI

jakarta.inject

jakarta.inject-api

1.0.5

ログ出力

実装にLogbackを利用し、SLF4Jはロギングの抽象化レイヤーを提供する。

ch.qos.logback

logback-core

1.3.14

ch.qos.logback

logback-classic

1.3.14

org.slf4j

jcl-over-slf4j

2.0.16

org.slf4j

slf4j-api

2.0.16

入力チェック

単項目チェックにJakarta Validationを利用し、実装にはHibernate Validatorを使用する。

jakarta.validation

jakarta.validation-api

2.0.2

org.hibernate.validator

hibernate-validator

6.2.5.Final

コネクションプール

org.apache.commons

commons-dbcp2

2.12.0

EL式

org.glassfish

jakarta.el

3.0.4

インメモリデータベース

H2をデフォルトで使用しているが切り替え可能。

com.h2database

h2

2.2.224

JDBCドライバ

org.postgresql

postgresql

42.7.4

JSON

JSONデータのシリアライズおよびデシリアライズに使用する。

com.fasterxml.jackson.core

jackson-databind

2.13.5

XML

XMLデータのシリアライズおよびデシリアライズに使用する。

jakarta.xml.bind

jakarta.xml.bind-api

2.3.3

org.glassfish.jaxb

jaxb-runtime

2.3.9

Macchinetta Batch Framework (2.x)の構成要素

Macchinetta Batch Framework (2.x)のSoftware Framework構成要素について説明する。 以下にSoftware Framework構成要素の概略図を示す。各要素の概要は後述する。

Macchinetta Batch Framework (2.x) Components of Software Framework
図 2. Software Framework構成要素の概略図

以下に、各要素の概要を示す。

非同期実行

非同期実行を実現する方法として、以下の機能を利用する。

DBポーリングによる周期起動

TERASOLUNA Batch Framework for Java (5.x)が提供するライブラリを利用する。

ファイルアクセス

Spring Batchから提供されている機能 に加えて、補助機能をTERASOLUNA Batch Framework for Java (5.x)が提供する。

バリデーション
相関チェック

相関チェックにはBean Validation、もしくはSpring Validationを利用する。

Macchinetta Batch Framework (2.x) Development Guideline - version 2.3.4.RELEASE, 2025-3-28